[AETHER-1032] Backport AETHER-538 to fabric.p4

AETHER-538 introduces a new design for the egress pipeline
where the tagged ports are explicitily matched in the
egress_vlan table. Moreover, no match means dropped with
this new design.

Change-Id: I4b7ac342d0650b8726f224e240933e15d9bb6e25
diff --git a/src/main/resources/p4c-out/fabric-spgw-int/tofino/mavericks_sde_9_0_0/p4info.txt b/src/main/resources/p4c-out/fabric-spgw-int/tofino/mavericks_sde_9_0_0/p4info.txt
index ac74287..1ba6edc 100644
--- a/src/main/resources/p4c-out/fabric-spgw-int/tofino/mavericks_sde_9_0_0/p4info.txt
+++ b/src/main/resources/p4c-out/fabric-spgw-int/tofino/mavericks_sde_9_0_0/p4info.txt
@@ -3,179 +3,6 @@
 }
 tables {
   preamble {
-    id: 33586632
-    name: "FabricIngress.spgw_ingress.downlink_filter_table"
-    alias: "downlink_filter_table"
-  }
-  match_fields {
-    id: 1
-    name: "ipv4_prefix"
-    bitwidth: 32
-    match_type: LPM
-  }
-  action_refs {
-    id: 16819938
-  }
-  const_default_action_id: 16819938
-  size: 1024
-}
-tables {
-  preamble {
-    id: 33567046
-    name: "FabricIngress.spgw_ingress.uplink_filter_table"
-    alias: "uplink_filter_table"
-  }
-  match_fields {
-    id: 1
-    name: "gtp_ipv4_dst"
-    bitwidth: 32
-    match_type: EXACT
-  }
-  action_refs {
-    id: 16819938
-  }
-  const_default_action_id: 16819938
-  size: 1024
-}
-tables {
-  preamble {
-    id: 33586958
-    name: "FabricIngress.spgw_ingress.downlink_pdr_lookup"
-    alias: "downlink_pdr_lookup"
-  }
-  match_fields {
-    id: 1
-    name: "ue_addr"
-    bitwidth: 32
-    match_type: EXACT
-  }
-  action_refs {
-    id: 16799934
-  }
-  action_refs {
-    id: 16800567
-    annotations: "@defaultonly"
-    scope: DEFAULT_ONLY
-  }
-  size: 1024
-}
-tables {
-  preamble {
-    id: 33587070
-    name: "FabricIngress.spgw_ingress.uplink_pdr_lookup"
-    alias: "uplink_pdr_lookup"
-  }
-  match_fields {
-    id: 1
-    name: "tunnel_ipv4_dst"
-    bitwidth: 32
-    match_type: EXACT
-  }
-  match_fields {
-    id: 2
-    name: "teid"
-    bitwidth: 32
-    match_type: EXACT
-  }
-  match_fields {
-    id: 3
-    name: "ue_addr"
-    bitwidth: 32
-    match_type: EXACT
-  }
-  action_refs {
-    id: 16799934
-  }
-  action_refs {
-    id: 16800567
-    annotations: "@defaultonly"
-    scope: DEFAULT_ONLY
-  }
-  size: 1024
-}
-tables {
-  preamble {
-    id: 33582573
-    name: "FabricIngress.spgw_ingress.flexible_pdr_lookup"
-    alias: "flexible_pdr_lookup"
-  }
-  match_fields {
-    id: 1
-    name: "spgw_direction"
-    bitwidth: 2
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 2
-    name: "tunnel_ipv4_dst"
-    bitwidth: 32
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 3
-    name: "teid"
-    bitwidth: 32
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 4
-    name: "ipv4_src"
-    bitwidth: 32
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 5
-    name: "ipv4_dst"
-    bitwidth: 32
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 6
-    name: "ip_proto"
-    bitwidth: 8
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 7
-    name: "l4_sport"
-    bitwidth: 16
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 8
-    name: "l4_dport"
-    bitwidth: 16
-    match_type: TERNARY
-  }
-  action_refs {
-    id: 16799934
-  }
-  const_default_action_id: 16799934
-  size: 1024
-}
-tables {
-  preamble {
-    id: 33613200
-    name: "FabricIngress.spgw_ingress.far_lookup"
-    alias: "far_lookup"
-  }
-  match_fields {
-    id: 1
-    name: "far_id"
-    bitwidth: 32
-    match_type: EXACT
-  }
-  action_refs {
-    id: 16834935
-  }
-  action_refs {
-    id: 16787606
-  }
-  const_default_action_id: 16834935
-  size: 1024
-}
-tables {
-  preamble {
     id: 33581620
     name: "FabricIngress.process_set_source_sink.tb_set_source"
     alias: "tb_set_source"
@@ -563,6 +390,109 @@
 }
 tables {
   preamble {
+    id: 33557250
+    name: "FabricIngress.spgw.interfaces"
+    alias: "interfaces"
+  }
+  match_fields {
+    id: 1
+    name: "ipv4_dst_addr"
+    bitwidth: 32
+    match_type: LPM
+  }
+  match_fields {
+    id: 2
+    name: "gtpu_is_valid"
+    bitwidth: 1
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16810012
+  }
+  action_refs {
+    id: 16783042
+    annotations: "@defaultonly"
+    scope: DEFAULT_ONLY
+  }
+  const_default_action_id: 16783042
+  size: 128
+}
+tables {
+  preamble {
+    id: 33566601
+    name: "FabricIngress.spgw.downlink_pdrs"
+    alias: "downlink_pdrs"
+  }
+  match_fields {
+    id: 1
+    name: "ue_addr"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16800614
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly"
+    scope: DEFAULT_ONLY
+  }
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33606410
+    name: "FabricIngress.spgw.uplink_pdrs"
+    alias: "uplink_pdrs"
+  }
+  match_fields {
+    id: 1
+    name: "tunnel_ipv4_dst"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  match_fields {
+    id: 2
+    name: "teid"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16800614
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly"
+    scope: DEFAULT_ONLY
+  }
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33599560
+    name: "FabricIngress.spgw.fars"
+    alias: "fars"
+  }
+  match_fields {
+    id: 1
+    name: "far_id"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16820307
+  }
+  action_refs {
+    id: 16814785
+  }
+  action_refs {
+    id: 16814681
+  }
+  const_default_action_id: 16820307
+  size: 2048
+}
+tables {
+  preamble {
     id: 33612258
     name: "FabricEgress.process_int_main.process_int_source.tb_int_source"
     alias: "tb_int_source"
@@ -645,14 +575,17 @@
     match_type: EXACT
   }
   action_refs {
+    id: 16807339
+  }
+  action_refs {
     id: 16790030
   }
   action_refs {
-    id: 16819938
+    id: 16787838
     annotations: "@defaultonly"
     scope: DEFAULT_ONLY
   }
-  const_default_action_id: 16819938
+  const_default_action_id: 16787838
   direct_resource_ids: 318827144
   size: 2048
 }
@@ -672,72 +605,6 @@
 }
 actions {
   preamble {
-    id: 16799934
-    name: "FabricIngress.spgw_ingress.set_pdr_attributes"
-    alias: "set_pdr_attributes"
-  }
-  params {
-    id: 1
-    name: "ctr_id"
-    bitwidth: 32
-  }
-  params {
-    id: 2
-    name: "far_id"
-    bitwidth: 32
-  }
-}
-actions {
-  preamble {
-    id: 16834935
-    name: "FabricIngress.spgw_ingress.load_normal_far_attributes"
-    alias: "load_normal_far_attributes"
-  }
-  params {
-    id: 1
-    name: "drop"
-    bitwidth: 1
-  }
-  params {
-    id: 2
-    name: "notify_cp"
-    bitwidth: 1
-  }
-}
-actions {
-  preamble {
-    id: 16787606
-    name: "FabricIngress.spgw_ingress.load_tunnel_far_attributes"
-    alias: "load_tunnel_far_attributes"
-  }
-  params {
-    id: 1
-    name: "drop"
-    bitwidth: 1
-  }
-  params {
-    id: 2
-    name: "notify_cp"
-    bitwidth: 1
-  }
-  params {
-    id: 3
-    name: "tunnel_src_addr"
-    bitwidth: 32
-  }
-  params {
-    id: 4
-    name: "tunnel_dst_addr"
-    bitwidth: 32
-  }
-  params {
-    id: 5
-    name: "teid"
-    bitwidth: 32
-  }
-}
-actions {
-  preamble {
     id: 16778827
     name: "FabricIngress.process_set_source_sink.int_set_source"
     alias: "int_set_source"
@@ -859,7 +726,7 @@
   preamble {
     id: 16820765
     name: "FabricIngress.acl.drop"
-    alias: "drop"
+    alias: "acl.drop"
   }
 }
 actions {
@@ -980,6 +847,138 @@
 }
 actions {
   preamble {
+    id: 16810012
+    name: "FabricIngress.spgw.load_iface"
+    alias: "load_iface"
+  }
+  params {
+    id: 1
+    name: "src_iface"
+    bitwidth: 8
+  }
+}
+actions {
+  preamble {
+    id: 16783042
+    name: "FabricIngress.spgw.iface_miss"
+    alias: "iface_miss"
+  }
+}
+actions {
+  preamble {
+    id: 16800614
+    name: "FabricIngress.spgw.load_pdr"
+    alias: "load_pdr"
+  }
+  params {
+    id: 1
+    name: "ctr_id"
+    bitwidth: 32
+  }
+  params {
+    id: 2
+    name: "far_id"
+    bitwidth: 32
+  }
+  params {
+    id: 3
+    name: "needs_gtpu_decap"
+    bitwidth: 1
+  }
+}
+actions {
+  preamble {
+    id: 16820307
+    name: "FabricIngress.spgw.load_normal_far"
+    alias: "load_normal_far"
+  }
+  params {
+    id: 1
+    name: "drop"
+    bitwidth: 1
+  }
+  params {
+    id: 2
+    name: "notify_cp"
+    bitwidth: 1
+  }
+}
+actions {
+  preamble {
+    id: 16814785
+    name: "FabricIngress.spgw.load_tunnel_far"
+    alias: "load_tunnel_far"
+  }
+  params {
+    id: 1
+    name: "drop"
+    bitwidth: 1
+  }
+  params {
+    id: 2
+    name: "notify_cp"
+    bitwidth: 1
+  }
+  params {
+    id: 3
+    name: "tunnel_src_port"
+    bitwidth: 16
+  }
+  params {
+    id: 4
+    name: "tunnel_src_addr"
+    bitwidth: 32
+  }
+  params {
+    id: 5
+    name: "tunnel_dst_addr"
+    bitwidth: 32
+  }
+  params {
+    id: 6
+    name: "teid"
+    bitwidth: 32
+  }
+}
+actions {
+  preamble {
+    id: 16814681
+    name: "FabricIngress.spgw.load_dbuf_far"
+    alias: "load_dbuf_far"
+  }
+  params {
+    id: 1
+    name: "drop"
+    bitwidth: 1
+  }
+  params {
+    id: 2
+    name: "notify_cp"
+    bitwidth: 1
+  }
+  params {
+    id: 3
+    name: "tunnel_src_port"
+    bitwidth: 16
+  }
+  params {
+    id: 4
+    name: "tunnel_src_addr"
+    bitwidth: 32
+  }
+  params {
+    id: 5
+    name: "tunnel_dst_addr"
+    bitwidth: 32
+  }
+  params {
+    id: 6
+    name: "teid"
+    bitwidth: 32
+  }
+}
+actions {
+  preamble {
     id: 16785857
     name: "FabricEgress.process_int_main.process_int_source.int_source_dscp"
     alias: "int_source_dscp"
@@ -1019,11 +1018,25 @@
 }
 actions {
   preamble {
+    id: 16807339
+    name: "FabricEgress.egress_next.push_vlan"
+    alias: "push_vlan"
+  }
+}
+actions {
+  preamble {
     id: 16790030
     name: "FabricEgress.egress_next.pop_vlan"
     alias: "pop_vlan"
   }
 }
+actions {
+  preamble {
+    id: 16787838
+    name: "FabricEgress.egress_next.drop"
+    alias: "egress_next.drop"
+  }
+}
 action_profiles {
   preamble {
     id: 285217164
@@ -1037,25 +1050,25 @@
 }
 counters {
   preamble {
-    id: 302029884
-    name: "FabricIngress.spgw_ingress.pdr_counter"
-    alias: "spgw_ingress.pdr_counter"
+    id: 302043952
+    name: "FabricIngress.spgw.pdr_counter"
+    alias: "FabricIngress.spgw.pdr_counter"
   }
   spec {
     unit: BOTH
   }
-  size: 1024
+  size: 2048
 }
 counters {
   preamble {
-    id: 302012289
-    name: "FabricEgress.spgw_egress.pdr_counter"
-    alias: "spgw_egress.pdr_counter"
+    id: 302049491
+    name: "FabricEgress.spgw.pdr_counter"
+    alias: "FabricEgress.spgw.pdr_counter"
   }
   spec {
     unit: BOTH
   }
-  size: 1024
+  size: 2048
 }
 direct_counters {
   preamble {
diff --git a/src/main/resources/p4c-out/fabric-spgw-int/tofino/mavericks_sde_9_0_0/pipe/context.json b/src/main/resources/p4c-out/fabric-spgw-int/tofino/mavericks_sde_9_0_0/pipe/context.json
index 3f6ca72..01a7d01 100644
--- a/src/main/resources/p4c-out/fabric-spgw-int/tofino/mavericks_sde_9_0_0/pipe/context.json
+++ b/src/main/resources/p4c-out/fabric-spgw-int/tofino/mavericks_sde_9_0_0/pipe/context.json
@@ -1,5 +1,5 @@
 {
-  "build_date": "Thu Jul 16 02:48:51 2020",
+  "build_date": "Wed Jan  6 08:40:42 2021",
   "schema_version": "1.8.4",
   "compiler_version": "9.0.0",
   "target": "tofino",
@@ -232,58 +232,51 @@
         "parser_state_id": 17
       },
       {
-        "parser_name": "parse_gtpu",
+        "parser_name": "parse_gtpu.$split_0",
         "match_registers": [],
         "tcam_rows": [ 223 ],
         "uses_pvs": false,
-        "parser_state_id": 17
+        "parser_state_id": 18
       },
       {
-        "parser_name": "do_parse_gtpu",
+        "parser_name": "parse_gtpu.$split_0",
         "match_registers": [],
         "tcam_rows": [ 222 ],
         "uses_pvs": false,
         "parser_state_id": 18
       },
       {
-        "parser_name": "do_parse_gtpu.$split_0",
+        "parser_name": "parse_gtpu.$split_0",
         "match_registers": [],
         "tcam_rows": [ 221 ],
         "uses_pvs": false,
-        "parser_state_id": 19
+        "parser_state_id": 18
       },
       {
-        "parser_name": "do_parse_gtpu.$split_0",
+        "parser_name": "parse_gtpu.$split_0",
         "match_registers": [],
         "tcam_rows": [ 220 ],
         "uses_pvs": false,
-        "parser_state_id": 19
+        "parser_state_id": 18
       },
       {
-        "parser_name": "do_parse_gtpu.$split_0",
+        "parser_name": "parse_inner_udp",
         "match_registers": [],
         "tcam_rows": [ 219 ],
         "uses_pvs": false,
         "parser_state_id": 19
       },
       {
-        "parser_name": "do_parse_gtpu.$split_0",
+        "parser_name": "parse_icmp",
         "match_registers": [],
         "tcam_rows": [ 218 ],
         "uses_pvs": false,
-        "parser_state_id": 19
-      },
-      {
-        "parser_name": "parse_inner_udp",
-        "match_registers": [],
-        "tcam_rows": [ 217 ],
-        "uses_pvs": false,
         "parser_state_id": 20
       },
       {
-        "parser_name": "parse_icmp",
+        "parser_name": "parse_icmp.$split_0",
         "match_registers": [],
-        "tcam_rows": [ 216 ],
+        "tcam_rows": [ 217 ],
         "uses_pvs": false,
         "parser_state_id": 21
       }
@@ -332,7 +325,7 @@
         "parser_state_id": 4
       },
       {
-        "parser_name": "start",
+        "parser_name": "$bridged_metadata.$split_2",
         "match_registers": [],
         "tcam_rows": [ 249 ],
         "uses_pvs": false,
@@ -343,17 +336,17 @@
         "match_registers": [],
         "tcam_rows": [ 248 ],
         "uses_pvs": false,
-        "parser_state_id": 5
+        "parser_state_id": 6
       },
       {
-        "parser_name": "parse_packet_out",
+        "parser_name": "start",
         "match_registers": [],
         "tcam_rows": [ 247 ],
         "uses_pvs": false,
         "parser_state_id": 6
       },
       {
-        "parser_name": "parse_ethernet",
+        "parser_name": "parse_packet_out",
         "match_registers": [],
         "tcam_rows": [ 246 ],
         "uses_pvs": false,
@@ -364,24 +357,24 @@
         "match_registers": [],
         "tcam_rows": [ 245 ],
         "uses_pvs": false,
-        "parser_state_id": 7
+        "parser_state_id": 8
       },
       {
         "parser_name": "parse_ethernet",
         "match_registers": [],
         "tcam_rows": [ 244 ],
         "uses_pvs": false,
-        "parser_state_id": 7
+        "parser_state_id": 8
       },
       {
         "parser_name": "parse_ethernet",
         "match_registers": [],
         "tcam_rows": [ 243 ],
         "uses_pvs": false,
-        "parser_state_id": 7
+        "parser_state_id": 8
       },
       {
-        "parser_name": "parse_vlan_tag",
+        "parser_name": "parse_ethernet",
         "match_registers": [],
         "tcam_rows": [ 242 ],
         "uses_pvs": false,
@@ -392,17 +385,17 @@
         "match_registers": [],
         "tcam_rows": [ 241 ],
         "uses_pvs": false,
-        "parser_state_id": 8
+        "parser_state_id": 9
       },
       {
-        "parser_name": "parse_inner_vlan_tag",
+        "parser_name": "parse_vlan_tag",
         "match_registers": [],
         "tcam_rows": [ 240 ],
         "uses_pvs": false,
         "parser_state_id": 9
       },
       {
-        "parser_name": "parse_eth_type",
+        "parser_name": "parse_inner_vlan_tag",
         "match_registers": [],
         "tcam_rows": [ 239 ],
         "uses_pvs": false,
@@ -413,17 +406,17 @@
         "match_registers": [],
         "tcam_rows": [ 238 ],
         "uses_pvs": false,
-        "parser_state_id": 10
+        "parser_state_id": 11
       },
       {
         "parser_name": "parse_eth_type",
         "match_registers": [],
         "tcam_rows": [ 237 ],
         "uses_pvs": false,
-        "parser_state_id": 10
+        "parser_state_id": 11
       },
       {
-        "parser_name": "parse_mpls",
+        "parser_name": "parse_eth_type",
         "match_registers": [],
         "tcam_rows": [ 236 ],
         "uses_pvs": false,
@@ -434,17 +427,17 @@
         "match_registers": [],
         "tcam_rows": [ 235 ],
         "uses_pvs": false,
-        "parser_state_id": 11
+        "parser_state_id": 12
       },
       {
-        "parser_name": "parse_ipv4",
+        "parser_name": "parse_mpls",
         "match_registers": [],
         "tcam_rows": [ 234 ],
         "uses_pvs": false,
         "parser_state_id": 12
       },
       {
-        "parser_name": "parse_ipv4.$split_0",
+        "parser_name": "parse_ipv4",
         "match_registers": [],
         "tcam_rows": [ 233 ],
         "uses_pvs": false,
@@ -455,161 +448,175 @@
         "match_registers": [],
         "tcam_rows": [ 232 ],
         "uses_pvs": false,
-        "parser_state_id": 13
+        "parser_state_id": 14
       },
       {
         "parser_name": "parse_ipv4.$split_0",
         "match_registers": [],
         "tcam_rows": [ 231 ],
         "uses_pvs": false,
-        "parser_state_id": 13
+        "parser_state_id": 14
       },
       {
         "parser_name": "parse_ipv4.$split_0",
         "match_registers": [],
         "tcam_rows": [ 230 ],
         "uses_pvs": false,
-        "parser_state_id": 13
+        "parser_state_id": 14
       },
       {
-        "parser_name": "parse_tcp",
+        "parser_name": "parse_ipv4.$split_0",
         "match_registers": [],
         "tcam_rows": [ 229 ],
         "uses_pvs": false,
         "parser_state_id": 14
       },
       {
-        "parser_name": "parse_int",
+        "parser_name": "parse_tcp",
         "match_registers": [],
         "tcam_rows": [ 228 ],
         "uses_pvs": false,
         "parser_state_id": 15
       },
       {
-        "parser_name": "parse_int",
+        "parser_name": "parse_tcp.$split_0",
         "match_registers": [],
         "tcam_rows": [ 227 ],
         "uses_pvs": false,
-        "parser_state_id": 15
-      },
-      {
-        "parser_name": "parse_intl4_shim",
-        "match_registers": [],
-        "tcam_rows": [ 226 ],
-        "uses_pvs": false,
         "parser_state_id": 16
       },
       {
-        "parser_name": "parse_intl4_shim.$split_0",
+        "parser_name": "parse_int",
+        "match_registers": [],
+        "tcam_rows": [ 226 ],
+        "uses_pvs": false,
+        "parser_state_id": 17
+      },
+      {
+        "parser_name": "parse_int",
         "match_registers": [],
         "tcam_rows": [ 225 ],
         "uses_pvs": false,
         "parser_state_id": 17
       },
       {
-        "parser_name": "parse_intl4_shim.$split_0",
+        "parser_name": "parse_intl4_shim",
         "match_registers": [],
         "tcam_rows": [ 224 ],
         "uses_pvs": false,
-        "parser_state_id": 17
-      },
-      {
-        "parser_name": "parse_intl4_tail",
-        "match_registers": [],
-        "tcam_rows": [ 223 ],
-        "uses_pvs": false,
         "parser_state_id": 18
       },
       {
-        "parser_name": "parse_int_data",
+        "parser_name": "parse_intl4_shim.$split_0",
+        "match_registers": [],
+        "tcam_rows": [ 223 ],
+        "uses_pvs": false,
+        "parser_state_id": 19
+      },
+      {
+        "parser_name": "parse_intl4_shim.$split_0",
         "match_registers": [],
         "tcam_rows": [ 222 ],
         "uses_pvs": false,
         "parser_state_id": 19
       },
       {
-        "parser_name": "parse_udp",
+        "parser_name": "parse_intl4_tail",
         "match_registers": [],
         "tcam_rows": [ 221 ],
         "uses_pvs": false,
         "parser_state_id": 20
       },
       {
-        "parser_name": "parse_udp",
+        "parser_name": "parse_int_data",
         "match_registers": [],
         "tcam_rows": [ 220 ],
         "uses_pvs": false,
-        "parser_state_id": 20
+        "parser_state_id": 21
       },
       {
-        "parser_name": "parse_gtpu",
+        "parser_name": "parse_udp",
         "match_registers": [],
         "tcam_rows": [ 219 ],
         "uses_pvs": false,
-        "parser_state_id": 21
+        "parser_state_id": 22
+      },
+      {
+        "parser_name": "parse_udp",
+        "match_registers": [],
+        "tcam_rows": [ 218 ],
+        "uses_pvs": false,
+        "parser_state_id": 22
       },
       {
         "parser_name": "parse_gtpu",
         "match_registers": [],
-        "tcam_rows": [ 218 ],
-        "uses_pvs": false,
-        "parser_state_id": 21
-      },
-      {
-        "parser_name": "do_parse_gtpu",
-        "match_registers": [],
         "tcam_rows": [ 217 ],
         "uses_pvs": false,
-        "parser_state_id": 22
-      },
-      {
-        "parser_name": "do_parse_gtpu",
-        "match_registers": [],
-        "tcam_rows": [ 216 ],
-        "uses_pvs": false,
-        "parser_state_id": 22
-      },
-      {
-        "parser_name": "do_parse_gtpu",
-        "match_registers": [],
-        "tcam_rows": [ 215 ],
-        "uses_pvs": false,
-        "parser_state_id": 22
-      },
-      {
-        "parser_name": "do_parse_gtpu",
-        "match_registers": [],
-        "tcam_rows": [ 214 ],
-        "uses_pvs": false,
-        "parser_state_id": 22
-      },
-      {
-        "parser_name": "parse_inner_udp",
-        "match_registers": [],
-        "tcam_rows": [ 213 ],
-        "uses_pvs": false,
         "parser_state_id": 23
       },
       {
-        "parser_name": "parse_icmp",
+        "parser_name": "parse_gtpu.$split_0",
         "match_registers": [],
-        "tcam_rows": [ 212 ],
+        "tcam_rows": [ 216 ],
         "uses_pvs": false,
         "parser_state_id": 24
       },
       {
-        "parser_name": "$mirrored",
+        "parser_name": "parse_gtpu.$split_0",
         "match_registers": [],
-        "tcam_rows": [ 211 ],
+        "tcam_rows": [ 215 ],
+        "uses_pvs": false,
+        "parser_state_id": 24
+      },
+      {
+        "parser_name": "parse_gtpu.$split_0",
+        "match_registers": [],
+        "tcam_rows": [ 214 ],
+        "uses_pvs": false,
+        "parser_state_id": 24
+      },
+      {
+        "parser_name": "parse_gtpu.$split_0",
+        "match_registers": [],
+        "tcam_rows": [ 213 ],
+        "uses_pvs": false,
+        "parser_state_id": 24
+      },
+      {
+        "parser_name": "parse_inner_udp",
+        "match_registers": [],
+        "tcam_rows": [ 212 ],
         "uses_pvs": false,
         "parser_state_id": 25
       },
       {
-        "parser_name": "$mirror_field_list_ingress_1",
+        "parser_name": "parse_icmp",
+        "match_registers": [],
+        "tcam_rows": [ 211 ],
+        "uses_pvs": false,
+        "parser_state_id": 26
+      },
+      {
+        "parser_name": "parse_icmp.$split_0",
         "match_registers": [],
         "tcam_rows": [ 210 ],
         "uses_pvs": false,
-        "parser_state_id": 26
+        "parser_state_id": 27
+      },
+      {
+        "parser_name": "$mirrored",
+        "match_registers": [],
+        "tcam_rows": [ 209 ],
+        "uses_pvs": false,
+        "parser_state_id": 28
+      },
+      {
+        "parser_name": "$mirror_field_list_ingress_1",
+        "match_registers": [],
+        "tcam_rows": [ 208 ],
+        "uses_pvs": false,
+        "parser_state_id": 29
       }
     ]
   },
@@ -621,29 +628,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -656,15 +705,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -677,15 +740,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -698,15 +817,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -719,18 +866,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -740,29 +901,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -775,8 +950,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -796,11 +971,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -817,7 +992,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -838,43 +1013,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -887,43 +1034,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -936,43 +1055,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -985,40 +1076,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -1034,36 +1143,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -1083,43 +1220,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -1132,15 +1269,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -1153,26 +1318,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -1188,7 +1361,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -1202,7 +1702,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -1219,46 +1719,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -1272,7 +1737,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -1289,51 +1754,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -1342,12 +1770,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -1359,12 +1785,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -1380,11 +1952,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -1401,11 +2015,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -1422,11 +2036,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -1443,11 +2057,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -1464,30 +2078,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -1503,7 +2568,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -1524,15 +2589,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -1559,7 +2624,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -1571,28 +2650,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -1602,7 +2659,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -1616,7 +2673,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -1630,7 +2687,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -1651,97 +2708,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -1756,7 +2722,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -1773,11 +2739,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -1798,7 +2869,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -1821,19 +2892,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -1841,42 +2912,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -1887,34 +2972,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -1924,7 +2981,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -1952,15 +3009,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -1973,7 +3030,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -1994,62 +3051,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -2059,14 +3072,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -2080,18 +3093,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -2101,18 +3165,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -2132,89 +3259,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -2225,20 +3275,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -2248,237 +3284,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -2493,7 +3298,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -2510,53 +3315,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -2573,11 +3336,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -2594,11 +3357,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -2615,11 +3378,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -2636,11 +3399,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -2657,397 +3420,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -3055,13 +3438,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -3069,13 +3452,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -3083,13 +3466,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -3097,13 +3480,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -3111,13 +3494,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -3125,13 +3508,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -3139,64 +3522,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -3206,7 +3543,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -3220,7 +3557,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -3234,7 +3571,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -3248,7 +3585,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -3262,7 +3599,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -3276,7 +3613,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -3290,7 +3627,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -3304,7 +3641,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -3325,13 +3662,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -3339,80 +3676,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -3422,168 +3739,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -3596,71 +3753,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -3694,7 +3823,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -3715,77 +3886,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -3799,7 +3900,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -3813,7 +3914,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -3827,7 +3928,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -3844,81 +3945,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -3932,7 +4019,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -3949,61 +4036,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -4023,7 +4131,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -4039,11 +4147,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -4060,11 +4168,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -4081,12 +4189,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -4102,12 +4210,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -4123,12 +4231,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -4144,11 +4252,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -4165,84 +4273,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -4259,11 +4290,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -4280,15 +4311,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -4301,7 +4332,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -4320,7 +4351,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -4331,7 +4362,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -4342,8 +4373,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -4353,7 +4384,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -4364,8 +4395,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -4386,8 +4417,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -4408,8 +4439,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -4430,8 +4461,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -4452,8 +4483,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -4474,8 +4505,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -4496,8 +4527,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -4518,7 +4549,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -4533,15 +4740,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -4551,18 +4758,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -4573,18 +4780,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -4595,18 +4802,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -4617,18 +4824,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -4639,18 +4846,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -4661,18 +4868,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -4683,18 +4890,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -4705,18 +4912,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -4726,84 +4933,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -4816,7 +5077,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -4828,7 +5089,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -4840,7 +5101,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -4852,7 +5113,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4864,7 +5125,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -4876,7 +5137,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4888,7 +5149,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -4900,7 +5161,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4912,7 +5173,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -4924,7 +5185,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4936,7 +5197,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4948,7 +5209,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4960,7 +5221,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -4972,7 +5233,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -4984,7 +5245,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4996,7 +5257,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -5008,7 +5269,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -5020,7 +5281,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -5039,12 +5300,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -5060,7 +5321,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5081,7 +5342,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5102,12 +5363,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -5123,7 +5384,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5144,7 +5405,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5165,16 +5426,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -5193,84 +5454,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -5280,7 +5475,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -5294,7 +5489,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -5315,7 +5510,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -5329,7 +5524,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -5350,12 +5545,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -5371,7 +5566,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -5385,7 +5580,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -5399,7 +5594,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -5420,7 +5615,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5441,7 +5636,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5467,7 +5662,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -5483,11 +5678,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -5504,7 +5699,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -5518,7 +5713,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -5539,7 +5734,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5560,7 +5755,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5577,79 +5772,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -5686,7 +5818,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -5700,10 +5846,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -5719,11 +5867,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -5740,11 +5888,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -5761,7 +5909,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -5782,7 +5930,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -5803,7 +5951,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -5824,12 +5972,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -5845,7 +5993,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -5857,6 +6005,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -5866,28 +6026,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -5904,16 +6043,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -5925,46 +6064,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -5978,7 +6131,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -5992,7 +6145,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -6009,11 +6162,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -6030,11 +6183,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -6048,7 +6201,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -6062,7 +6215,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -6076,7 +6229,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -6093,15 +6246,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -6118,7 +6292,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -6139,7 +6313,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -6160,7 +6334,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -6181,11 +6355,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6195,11 +6369,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6209,11 +6383,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6223,11 +6397,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6237,11 +6411,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6251,11 +6425,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6265,11 +6439,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6286,7 +6460,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -6300,7 +6474,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -6314,7 +6488,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -6328,7 +6502,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -6342,7 +6516,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -6356,7 +6530,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -6377,7 +6551,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -6391,7 +6565,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -6417,7 +6591,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -6433,12 +6607,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -6454,12 +6628,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -6475,12 +6649,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -6492,11 +6666,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -6513,154 +6687,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -6668,19 +6789,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -6695,7 +6810,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -6709,7 +7120,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -6723,7 +7134,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -6737,7 +7148,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -6754,17 +7165,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -6772,29 +7188,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -6803,17 +7286,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -6821,13 +7304,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -6835,13 +7318,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -6849,13 +7353,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -6866,63 +7370,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -6939,11 +7422,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -6957,10 +7440,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -6974,11 +7457,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -6992,7 +7538,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -7013,7 +7559,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -7034,24 +7580,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -7065,24 +7601,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -7092,11 +7618,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -7113,11 +7681,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -7134,78 +7744,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -7215,29 +7769,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7250,8 +7804,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -7271,15 +7825,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7292,8 +7860,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -7313,8 +7881,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -7325,8 +7990,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -7340,12 +8005,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -7365,8 +8113,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -7386,7 +8134,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -7403,11 +8193,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -7424,28 +8214,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -7454,7 +8223,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -7475,29 +8244,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7510,15 +8321,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7531,15 +8356,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7552,15 +8433,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7573,18 +8482,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -7594,29 +8517,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7629,8 +8566,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -7650,11 +8587,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -7671,7 +8608,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -7692,43 +8629,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7741,43 +8650,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7790,43 +8671,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7839,40 +8692,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -7888,36 +8759,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -7937,43 +8836,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7986,15 +8885,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -8007,26 +8934,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -8042,7 +8977,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -8056,7 +9318,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -8073,46 +9335,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -8126,7 +9353,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -8143,51 +9370,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -8196,12 +9386,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -8213,12 +9401,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -8234,11 +9568,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -8255,11 +9631,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -8276,11 +9652,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -8297,11 +9673,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -8318,30 +9694,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -8357,7 +10184,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -8378,15 +10205,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -8413,7 +10240,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -8425,28 +10266,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -8456,7 +10275,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -8470,7 +10289,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -8484,7 +10303,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -8505,97 +10324,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -8610,7 +10338,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -8627,11 +10355,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -8652,7 +10485,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -8675,19 +10508,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -8695,42 +10528,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -8741,34 +10588,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -8778,7 +10597,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -8806,15 +10625,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -8827,7 +10646,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -8848,62 +10667,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -8913,14 +10688,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -8934,18 +10709,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -8955,18 +10781,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -8986,89 +10875,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -9079,20 +10891,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -9102,237 +10900,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -9347,7 +10914,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -9364,53 +10931,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -9427,11 +10952,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -9448,11 +10973,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -9469,11 +10994,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -9490,11 +11015,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -9511,397 +11036,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -9909,13 +11054,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -9923,13 +11068,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -9937,13 +11082,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -9951,13 +11096,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -9965,13 +11110,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -9979,13 +11124,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -9993,64 +11138,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -10060,7 +11159,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -10074,7 +11173,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -10088,7 +11187,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -10102,7 +11201,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -10116,7 +11215,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -10130,7 +11229,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -10144,7 +11243,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -10158,7 +11257,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -10179,13 +11278,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -10193,80 +11292,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -10276,168 +11355,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -10450,71 +11369,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -10548,7 +11439,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -10569,77 +11502,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -10653,7 +11516,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -10667,7 +11530,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -10681,7 +11544,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -10698,81 +11561,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -10786,7 +11635,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -10803,61 +11652,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -10877,7 +11747,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -10893,11 +11763,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -10914,11 +11784,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -10935,12 +11805,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -10956,12 +11826,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -10977,12 +11847,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -10998,11 +11868,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -11019,84 +11889,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -11113,11 +11906,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -11134,15 +11927,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -11155,7 +11948,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -11174,7 +11967,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -11185,7 +11978,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -11196,8 +11989,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -11207,7 +12000,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -11218,8 +12011,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -11240,8 +12033,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -11262,8 +12055,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -11284,8 +12077,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -11306,8 +12099,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -11328,8 +12121,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -11350,8 +12143,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -11372,7 +12165,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -11387,15 +12356,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -11405,18 +12374,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -11427,18 +12396,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -11449,18 +12418,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -11471,18 +12440,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -11493,18 +12462,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -11515,18 +12484,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -11537,18 +12506,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -11559,18 +12528,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -11580,84 +12549,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -11670,7 +12693,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -11682,7 +12705,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -11694,7 +12717,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -11706,7 +12729,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11718,7 +12741,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -11730,7 +12753,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11742,7 +12765,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -11754,7 +12777,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11766,7 +12789,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -11778,7 +12801,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11790,7 +12813,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11802,7 +12825,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11814,7 +12837,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -11826,7 +12849,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -11838,7 +12861,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11850,7 +12873,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -11862,7 +12885,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -11874,7 +12897,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -11893,12 +12916,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -11914,7 +12937,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11935,7 +12958,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11956,12 +12979,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -11977,7 +13000,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11998,7 +13021,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -12019,16 +13042,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -12047,84 +13070,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -12134,7 +13091,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -12148,7 +13105,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -12169,7 +13126,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -12183,7 +13140,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -12204,12 +13161,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -12225,7 +13182,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12239,7 +13196,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -12253,7 +13210,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -12274,7 +13231,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -12295,7 +13252,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -12321,7 +13278,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -12337,11 +13294,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -12358,7 +13315,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12372,7 +13329,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12393,7 +13350,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -12414,7 +13371,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -12431,79 +13388,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -12540,7 +13434,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -12554,10 +13462,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -12573,11 +13483,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -12594,11 +13504,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -12615,7 +13525,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12636,7 +13546,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12657,7 +13567,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12678,12 +13588,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -12699,7 +13609,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12711,6 +13621,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -12720,28 +13642,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12758,16 +13659,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -12779,46 +13680,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -12832,7 +13747,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -12846,7 +13761,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -12863,11 +13778,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12884,11 +13799,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12902,7 +13817,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12916,7 +13831,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12930,7 +13845,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12947,15 +13862,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -12972,7 +13908,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12993,7 +13929,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -13014,7 +13950,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -13035,11 +13971,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13049,11 +13985,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13063,11 +13999,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13077,11 +14013,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13091,11 +14027,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13105,11 +14041,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13119,11 +14055,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13140,7 +14076,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -13154,7 +14090,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -13168,7 +14104,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -13182,7 +14118,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -13196,7 +14132,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -13210,7 +14146,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -13231,7 +14167,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -13245,7 +14181,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -13271,7 +14207,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -13287,12 +14223,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -13308,12 +14244,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -13329,12 +14265,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -13346,11 +14282,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -13367,154 +14303,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -13522,19 +14405,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -13549,7 +14426,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -13563,7 +14736,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -13577,7 +14750,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -13591,7 +14764,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -13608,17 +14781,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -13626,29 +14804,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -13657,17 +14902,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -13675,13 +14920,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -13689,13 +14934,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -13703,13 +14969,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -13720,63 +14986,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -13793,11 +15038,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -13811,10 +15056,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -13828,11 +15073,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -13846,7 +15154,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -13867,7 +15175,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -13888,24 +15196,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -13919,24 +15217,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -13946,11 +15234,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -13967,11 +15297,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -13988,78 +15360,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -14069,29 +15385,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14104,8 +15420,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -14125,15 +15441,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14146,8 +15476,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -14167,8 +15497,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -14179,8 +15606,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -14194,12 +15621,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -14219,8 +15729,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -14240,7 +15750,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -14257,11 +15809,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -14278,28 +15830,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -14308,7 +15839,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -14329,29 +15860,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14364,15 +15937,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14385,15 +15972,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14406,15 +16049,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14427,18 +16098,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -14448,29 +16133,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14483,8 +16182,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -14504,11 +16203,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -14525,7 +16224,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -14546,43 +16245,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14595,43 +16266,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14644,43 +16287,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14693,40 +16308,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -14742,36 +16375,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -14791,43 +16452,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14840,15 +16501,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14861,26 +16550,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -14896,7 +16593,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -14910,7 +16934,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -14927,46 +16951,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -14980,7 +16969,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -14997,51 +16986,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -15050,12 +17002,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -15067,12 +17017,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -15088,11 +17184,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -15109,11 +17247,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -15130,11 +17268,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -15151,11 +17289,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -15172,30 +17310,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -15211,7 +17800,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -15232,15 +17821,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -15267,7 +17856,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -15279,28 +17882,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -15310,7 +17891,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -15324,7 +17905,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -15338,7 +17919,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -15359,97 +17940,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -15464,7 +17954,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -15481,11 +17971,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -15506,7 +18101,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -15529,19 +18124,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -15549,42 +18144,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -15595,34 +18204,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -15632,7 +18213,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -15660,15 +18241,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -15681,7 +18262,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -15702,62 +18283,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -15767,14 +18304,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -15788,18 +18325,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -15809,18 +18397,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -15840,89 +18491,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -15933,20 +18507,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -15956,237 +18516,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -16201,7 +18530,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -16218,53 +18547,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -16281,11 +18568,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -16302,11 +18589,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -16323,11 +18610,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -16344,11 +18631,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -16365,397 +18652,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -16763,13 +18670,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -16777,13 +18684,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -16791,13 +18698,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -16805,13 +18712,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -16819,13 +18726,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -16833,13 +18740,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -16847,64 +18754,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -16914,7 +18775,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -16928,7 +18789,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -16942,7 +18803,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -16956,7 +18817,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -16970,7 +18831,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -16984,7 +18845,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -16998,7 +18859,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -17012,7 +18873,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -17033,13 +18894,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -17047,80 +18908,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -17130,168 +18971,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -17304,71 +18985,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -17402,7 +19055,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -17423,77 +19118,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -17507,7 +19132,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -17521,7 +19146,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -17535,7 +19160,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -17552,81 +19177,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -17640,7 +19251,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -17657,61 +19268,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -17731,7 +19363,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -17747,11 +19379,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -17768,11 +19400,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -17789,12 +19421,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -17810,12 +19442,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -17831,12 +19463,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -17852,11 +19484,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -17873,84 +19505,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -17967,11 +19522,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -17988,15 +19543,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -18009,7 +19564,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -18028,7 +19583,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -18039,7 +19594,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -18050,8 +19605,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -18061,7 +19616,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -18072,8 +19627,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -18094,8 +19649,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -18116,8 +19671,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -18138,8 +19693,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -18160,8 +19715,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -18182,8 +19737,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -18204,8 +19759,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -18226,7 +19781,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -18241,15 +19972,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -18259,18 +19990,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -18281,18 +20012,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -18303,18 +20034,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -18325,18 +20056,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -18347,18 +20078,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -18369,18 +20100,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -18391,18 +20122,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -18413,18 +20144,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -18434,84 +20165,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -18524,7 +20309,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -18536,7 +20321,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -18548,7 +20333,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -18560,7 +20345,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18572,7 +20357,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -18584,7 +20369,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18596,7 +20381,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -18608,7 +20393,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18620,7 +20405,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -18632,7 +20417,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18644,7 +20429,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18656,7 +20441,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18668,7 +20453,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -18680,7 +20465,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -18692,7 +20477,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18704,7 +20489,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -18716,7 +20501,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -18728,7 +20513,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -18747,12 +20532,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -18768,7 +20553,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18789,7 +20574,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18810,12 +20595,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -18831,7 +20616,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18852,7 +20637,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18873,16 +20658,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -18901,84 +20686,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -18988,7 +20707,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -19002,7 +20721,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -19023,7 +20742,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -19037,7 +20756,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -19058,12 +20777,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -19079,7 +20798,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19093,7 +20812,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -19107,7 +20826,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -19128,7 +20847,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -19149,7 +20868,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -19175,7 +20894,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -19191,11 +20910,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -19212,7 +20931,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19226,7 +20945,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19247,7 +20966,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -19268,7 +20987,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -19285,79 +21004,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -19394,7 +21050,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -19408,10 +21078,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -19427,11 +21099,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -19448,11 +21120,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -19469,7 +21141,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19490,7 +21162,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19511,7 +21183,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19532,12 +21204,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -19553,7 +21225,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19565,6 +21237,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -19574,28 +21258,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19612,16 +21275,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -19633,46 +21296,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -19686,7 +21363,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -19700,7 +21377,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -19717,11 +21394,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19738,11 +21415,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19756,7 +21433,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19770,7 +21447,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19784,7 +21461,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19801,15 +21478,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -19826,7 +21524,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19847,7 +21545,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -19868,7 +21566,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19889,11 +21587,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19903,11 +21601,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19917,11 +21615,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19931,11 +21629,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19945,11 +21643,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19959,11 +21657,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19973,11 +21671,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19994,7 +21692,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -20008,7 +21706,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -20022,7 +21720,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -20036,7 +21734,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -20050,7 +21748,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -20064,7 +21762,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -20085,7 +21783,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -20099,7 +21797,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -20125,7 +21823,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -20141,12 +21839,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -20162,12 +21860,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -20183,12 +21881,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -20200,11 +21898,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -20221,154 +21919,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -20376,19 +22021,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -20403,7 +22042,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -20417,7 +22352,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -20431,7 +22366,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -20445,7 +22380,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -20462,17 +22397,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -20480,29 +22420,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -20511,17 +22518,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -20529,13 +22536,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -20543,13 +22550,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -20557,13 +22585,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -20574,63 +22602,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -20647,11 +22654,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -20665,10 +22672,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -20682,11 +22689,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -20700,7 +22770,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -20721,7 +22791,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -20742,24 +22812,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -20773,24 +22833,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -20800,11 +22850,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -20821,11 +22913,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -20842,78 +22976,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -20923,29 +23001,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -20958,8 +23036,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -20979,15 +23057,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21000,8 +23092,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -21021,8 +23113,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -21033,8 +23222,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -21048,12 +23237,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -21073,8 +23345,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -21094,7 +23366,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -21111,11 +23425,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -21132,28 +23446,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -21162,7 +23455,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -21183,29 +23476,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21218,15 +23553,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21239,15 +23588,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21260,15 +23665,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21281,18 +23714,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -21302,29 +23749,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21337,8 +23798,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -21358,11 +23819,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -21379,7 +23840,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -21400,43 +23861,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21449,43 +23882,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21498,43 +23903,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21547,40 +23924,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -21596,36 +23991,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -21645,43 +24068,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21694,15 +24117,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21715,26 +24166,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -21750,7 +24209,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -21764,7 +24550,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -21781,46 +24567,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -21834,7 +24585,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -21851,51 +24602,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -21904,12 +24618,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -21921,12 +24633,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -21942,11 +24800,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -21963,11 +24863,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -21984,11 +24884,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -22005,11 +24905,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -22026,30 +24926,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -22065,7 +25416,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -22086,15 +25437,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -22121,7 +25472,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -22133,28 +25498,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -22164,7 +25507,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -22178,7 +25521,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -22192,7 +25535,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -22213,97 +25556,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -22318,7 +25570,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -22335,11 +25587,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -22360,7 +25717,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -22383,19 +25740,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -22403,42 +25760,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -22449,34 +25820,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -22486,7 +25829,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -22514,15 +25857,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -22535,7 +25878,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -22556,62 +25899,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -22621,14 +25920,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -22642,18 +25941,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -22663,18 +26013,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -22694,89 +26107,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -22787,20 +26123,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -22810,237 +26132,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -23055,7 +26146,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -23072,53 +26163,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -23135,11 +26184,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -23156,11 +26205,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -23177,11 +26226,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -23198,11 +26247,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -23219,397 +26268,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -23617,13 +26286,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -23631,13 +26300,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -23645,13 +26314,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -23659,13 +26328,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -23673,13 +26342,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -23687,13 +26356,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -23701,64 +26370,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -23768,7 +26391,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -23782,7 +26405,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -23796,7 +26419,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -23810,7 +26433,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -23824,7 +26447,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -23838,7 +26461,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -23852,7 +26475,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -23866,7 +26489,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -23887,13 +26510,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -23901,80 +26524,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -23984,168 +26587,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -24158,71 +26601,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -24256,7 +26671,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -24277,77 +26734,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -24361,7 +26748,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -24375,7 +26762,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -24389,7 +26776,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -24406,81 +26793,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -24494,7 +26867,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -24511,61 +26884,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -24585,7 +26979,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -24601,11 +26995,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -24622,11 +27016,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -24643,12 +27037,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -24664,12 +27058,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -24685,12 +27079,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -24706,11 +27100,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -24727,84 +27121,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -24821,11 +27138,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -24842,15 +27159,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -24863,7 +27180,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -24882,7 +27199,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -24893,7 +27210,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -24904,8 +27221,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -24915,7 +27232,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -24926,8 +27243,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -24948,8 +27265,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -24970,8 +27287,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -24992,8 +27309,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -25014,8 +27331,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -25036,8 +27353,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -25058,8 +27375,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -25080,7 +27397,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -25095,15 +27588,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -25113,18 +27606,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -25135,18 +27628,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -25157,18 +27650,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -25179,18 +27672,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -25201,18 +27694,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -25223,18 +27716,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -25245,18 +27738,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -25267,18 +27760,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -25288,84 +27781,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -25378,7 +27925,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -25390,7 +27937,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -25402,7 +27949,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -25414,7 +27961,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25426,7 +27973,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -25438,7 +27985,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25450,7 +27997,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -25462,7 +28009,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25474,7 +28021,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -25486,7 +28033,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25498,7 +28045,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25510,7 +28057,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25522,7 +28069,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -25534,7 +28081,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -25546,7 +28093,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25558,7 +28105,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -25570,7 +28117,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -25582,7 +28129,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -25601,12 +28148,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -25622,7 +28169,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25643,7 +28190,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25664,12 +28211,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -25685,7 +28232,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25706,7 +28253,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25727,16 +28274,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -25755,84 +28302,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -25842,7 +28323,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -25856,7 +28337,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -25877,7 +28358,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -25891,7 +28372,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -25912,12 +28393,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -25933,7 +28414,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -25947,7 +28428,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -25961,7 +28442,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -25982,7 +28463,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -26003,7 +28484,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -26029,7 +28510,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -26045,11 +28526,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -26066,7 +28547,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -26080,7 +28561,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -26101,7 +28582,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -26122,7 +28603,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -26139,79 +28620,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -26248,7 +28666,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -26262,10 +28694,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -26281,11 +28715,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -26302,11 +28736,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -26323,7 +28757,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26344,7 +28778,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26365,7 +28799,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26386,12 +28820,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -26407,7 +28841,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26419,6 +28853,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -26428,28 +28874,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26466,16 +28891,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -26487,46 +28912,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -26540,7 +28979,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -26554,7 +28993,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -26571,11 +29010,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26592,11 +29031,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -26610,7 +29049,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -26624,7 +29063,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -26638,7 +29077,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -26655,15 +29094,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -26680,7 +29140,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26701,7 +29161,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -26722,7 +29182,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26743,11 +29203,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26757,11 +29217,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26771,11 +29231,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26785,11 +29245,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26799,11 +29259,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26813,11 +29273,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26827,11 +29287,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26848,7 +29308,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -26862,7 +29322,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -26876,7 +29336,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -26890,7 +29350,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -26904,7 +29364,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -26918,7 +29378,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -26939,7 +29399,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -26953,7 +29413,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -26979,7 +29439,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -26995,12 +29455,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -27016,12 +29476,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -27037,12 +29497,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -27054,11 +29514,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -27075,154 +29535,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -27230,19 +29637,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -27257,7 +29658,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -27271,7 +29968,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -27285,7 +29982,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -27299,7 +29996,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -27316,17 +30013,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -27334,29 +30036,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -27365,17 +30134,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -27383,13 +30152,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -27397,13 +30166,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -27411,13 +30201,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -27428,63 +30218,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -27501,11 +30270,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -27519,10 +30288,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -27536,11 +30305,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -27554,7 +30386,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -27575,7 +30407,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -27596,24 +30428,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -27627,24 +30449,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -27654,11 +30466,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -27675,11 +30529,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -27696,78 +30592,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -27777,29 +30617,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -27812,8 +30652,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -27833,15 +30673,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -27854,8 +30708,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -27875,8 +30729,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -27887,8 +30838,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -27902,12 +30853,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -27927,8 +30961,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -27948,7 +30982,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -27965,11 +31041,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -27986,28 +31062,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -28016,7 +31071,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -28037,29 +31092,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28072,15 +31169,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28093,15 +31204,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28114,15 +31281,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28135,18 +31330,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -28156,29 +31365,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28191,8 +31414,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -28212,11 +31435,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -28233,7 +31456,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -28254,43 +31477,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28303,43 +31498,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28352,43 +31519,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28401,40 +31540,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -28450,36 +31607,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -28499,43 +31684,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28548,15 +31733,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28569,26 +31782,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -28604,7 +31825,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -28618,7 +32166,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -28635,46 +32183,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -28688,7 +32201,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -28705,51 +32218,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -28758,12 +32234,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -28775,12 +32249,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -28796,11 +32416,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -28817,11 +32479,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -28838,11 +32500,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -28859,11 +32521,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -28880,30 +32542,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -28919,7 +33032,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -28940,15 +33053,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28975,7 +33088,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -28987,28 +33114,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -29018,7 +33123,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -29032,7 +33137,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -29046,7 +33151,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -29067,97 +33172,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -29172,7 +33186,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -29189,11 +33203,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -29214,7 +33333,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -29237,19 +33356,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -29257,42 +33376,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -29303,34 +33436,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -29340,7 +33445,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -29368,15 +33473,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -29389,7 +33494,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -29410,62 +33515,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -29475,14 +33536,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -29496,18 +33557,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -29517,18 +33629,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -29548,89 +33723,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -29641,20 +33739,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -29664,237 +33748,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -29909,7 +33762,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -29926,53 +33779,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -29989,11 +33800,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -30010,11 +33821,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -30031,11 +33842,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -30052,11 +33863,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -30073,397 +33884,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -30471,13 +33902,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -30485,13 +33916,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -30499,13 +33930,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -30513,13 +33944,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -30527,13 +33958,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -30541,13 +33972,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -30555,64 +33986,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -30622,7 +34007,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -30636,7 +34021,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -30650,7 +34035,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -30664,7 +34049,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -30678,7 +34063,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -30692,7 +34077,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -30706,7 +34091,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -30720,7 +34105,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -30741,13 +34126,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -30755,80 +34140,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -30838,168 +34203,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -31012,71 +34217,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -31110,7 +34287,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -31131,77 +34350,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -31215,7 +34364,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -31229,7 +34378,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -31243,7 +34392,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -31260,81 +34409,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -31348,7 +34483,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -31365,61 +34500,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -31439,7 +34595,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -31455,11 +34611,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -31476,11 +34632,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -31497,12 +34653,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -31518,12 +34674,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -31539,12 +34695,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -31560,11 +34716,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -31581,84 +34737,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -31675,11 +34754,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -31696,15 +34775,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -31717,7 +34796,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -31736,7 +34815,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -31747,7 +34826,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -31758,8 +34837,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -31769,7 +34848,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -31780,8 +34859,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -31802,8 +34881,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -31824,8 +34903,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -31846,8 +34925,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -31868,8 +34947,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -31890,8 +34969,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -31912,8 +34991,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -31934,7 +35013,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -31949,15 +35204,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -31967,18 +35222,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -31989,18 +35244,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -32011,18 +35266,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -32033,18 +35288,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -32055,18 +35310,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -32077,18 +35332,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -32099,18 +35354,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -32121,18 +35376,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -32142,84 +35397,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -32232,7 +35541,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -32244,7 +35553,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -32256,7 +35565,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -32268,7 +35577,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32280,7 +35589,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -32292,7 +35601,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32304,7 +35613,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -32316,7 +35625,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32328,7 +35637,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -32340,7 +35649,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32352,7 +35661,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32364,7 +35673,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32376,7 +35685,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -32388,7 +35697,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -32400,7 +35709,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32412,7 +35721,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -32424,7 +35733,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -32436,7 +35745,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -32455,12 +35764,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -32476,7 +35785,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32497,7 +35806,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32518,12 +35827,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -32539,7 +35848,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32560,7 +35869,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32581,16 +35890,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -32609,84 +35918,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -32696,7 +35939,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -32710,7 +35953,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -32731,7 +35974,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -32745,7 +35988,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -32766,12 +36009,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -32787,7 +36030,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -32801,7 +36044,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -32815,7 +36058,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -32836,7 +36079,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32857,7 +36100,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32883,7 +36126,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -32899,11 +36142,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -32920,7 +36163,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -32934,7 +36177,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -32955,7 +36198,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32976,7 +36219,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32993,79 +36236,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -33102,7 +36282,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -33116,10 +36310,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -33135,11 +36331,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -33156,11 +36352,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -33177,7 +36373,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33198,7 +36394,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33219,7 +36415,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33240,12 +36436,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -33261,7 +36457,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33273,6 +36469,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -33282,28 +36490,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33320,16 +36507,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -33341,46 +36528,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -33394,7 +36595,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -33408,7 +36609,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -33425,11 +36626,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33446,11 +36647,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -33464,7 +36665,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -33478,7 +36679,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -33492,7 +36693,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -33509,15 +36710,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -33534,7 +36756,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33555,7 +36777,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -33576,7 +36798,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33597,11 +36819,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33611,11 +36833,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33625,11 +36847,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33639,11 +36861,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33653,11 +36875,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33667,11 +36889,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33681,11 +36903,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33702,7 +36924,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -33716,7 +36938,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -33730,7 +36952,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -33744,7 +36966,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -33758,7 +36980,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -33772,7 +36994,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -33793,7 +37015,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -33807,7 +37029,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -33833,7 +37055,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -33849,12 +37071,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -33870,12 +37092,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -33891,12 +37113,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -33908,11 +37130,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33929,154 +37151,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -34084,19 +37253,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -34111,7 +37274,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -34125,7 +37584,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -34139,7 +37598,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -34153,7 +37612,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -34170,17 +37629,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -34188,29 +37652,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34219,17 +37750,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -34237,13 +37768,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -34251,13 +37782,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -34265,13 +37817,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -34282,63 +37834,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -34355,11 +37886,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -34373,10 +37904,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -34390,11 +37921,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -34408,7 +38002,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -34429,7 +38023,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -34450,24 +38044,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -34481,24 +38065,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -34508,11 +38082,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -34529,11 +38145,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -34550,78 +38208,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -34631,29 +38233,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34666,8 +38268,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -34687,15 +38289,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34708,8 +38324,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -34729,8 +38345,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -34741,8 +38454,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -34756,12 +38469,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -34781,8 +38577,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -34802,7 +38598,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -34819,11 +38657,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -34840,28 +38678,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -34870,7 +38687,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -34891,29 +38708,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34926,15 +38785,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34947,15 +38820,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34968,15 +38897,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34989,18 +38946,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -35010,29 +38981,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35045,8 +39030,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -35066,11 +39051,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -35087,7 +39072,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -35108,43 +39093,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35157,43 +39114,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35206,43 +39135,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35255,40 +39156,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -35304,36 +39223,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -35353,43 +39300,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35402,15 +39349,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35423,26 +39398,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -35458,7 +39441,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -35472,7 +39782,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -35489,46 +39799,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -35542,7 +39817,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -35559,51 +39834,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -35612,12 +39850,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -35629,12 +39865,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -35650,11 +40032,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -35671,11 +40095,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -35692,11 +40116,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -35713,11 +40137,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -35734,30 +40158,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -35773,7 +40648,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -35794,15 +40669,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35829,7 +40704,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -35841,28 +40730,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -35872,7 +40739,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -35886,7 +40753,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -35900,7 +40767,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -35921,97 +40788,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -36026,7 +40802,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -36043,11 +40819,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -36068,7 +40949,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -36091,19 +40972,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -36111,42 +40992,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -36157,34 +41052,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -36194,7 +41061,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -36222,15 +41089,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -36243,7 +41110,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -36264,62 +41131,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -36329,14 +41152,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -36350,18 +41173,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -36371,18 +41245,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -36402,89 +41339,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -36495,20 +41355,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -36518,237 +41364,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -36763,7 +41378,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -36780,53 +41395,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -36843,11 +41416,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -36864,11 +41437,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -36885,11 +41458,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -36906,11 +41479,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -36927,397 +41500,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -37325,13 +41518,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -37339,13 +41532,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -37353,13 +41546,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -37367,13 +41560,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -37381,13 +41574,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -37395,13 +41588,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -37409,64 +41602,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -37476,7 +41623,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -37490,7 +41637,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -37504,7 +41651,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -37518,7 +41665,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -37532,7 +41679,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -37546,7 +41693,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -37560,7 +41707,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -37574,7 +41721,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -37595,13 +41742,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -37609,80 +41756,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -37692,168 +41819,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -37866,71 +41833,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -37964,7 +41903,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -37985,77 +41966,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -38069,7 +41980,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -38083,7 +41994,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -38097,7 +42008,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -38114,81 +42025,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -38202,7 +42099,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -38219,61 +42116,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -38293,7 +42211,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -38309,11 +42227,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -38330,11 +42248,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -38351,12 +42269,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -38372,12 +42290,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -38393,12 +42311,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -38414,11 +42332,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -38435,84 +42353,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -38529,11 +42370,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -38550,15 +42391,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -38571,7 +42412,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -38590,7 +42431,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -38601,7 +42442,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -38612,8 +42453,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -38623,7 +42464,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -38634,8 +42475,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -38656,8 +42497,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -38678,8 +42519,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -38700,8 +42541,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -38722,8 +42563,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -38744,8 +42585,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -38766,8 +42607,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -38788,7 +42629,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -38803,15 +42820,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -38821,18 +42838,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -38843,18 +42860,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -38865,18 +42882,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -38887,18 +42904,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -38909,18 +42926,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -38931,18 +42948,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -38953,18 +42970,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -38975,18 +42992,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -38996,84 +43013,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -39086,7 +43157,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -39098,7 +43169,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -39110,7 +43181,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -39122,7 +43193,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39134,7 +43205,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -39146,7 +43217,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39158,7 +43229,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -39170,7 +43241,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39182,7 +43253,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -39194,7 +43265,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39206,7 +43277,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39218,7 +43289,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39230,7 +43301,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -39242,7 +43313,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -39254,7 +43325,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39266,7 +43337,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -39278,7 +43349,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -39290,7 +43361,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -39309,12 +43380,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -39330,7 +43401,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39351,7 +43422,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39372,12 +43443,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -39393,7 +43464,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39414,7 +43485,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39435,16 +43506,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -39463,84 +43534,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -39550,7 +43555,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -39564,7 +43569,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -39585,7 +43590,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -39599,7 +43604,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -39620,12 +43625,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -39641,7 +43646,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -39655,7 +43660,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -39669,7 +43674,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -39690,7 +43695,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39711,7 +43716,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39737,7 +43742,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -39753,11 +43758,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -39774,7 +43779,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -39788,7 +43793,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -39809,7 +43814,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39830,7 +43835,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39847,79 +43852,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -39956,7 +43898,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -39970,10 +43926,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -39989,11 +43947,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -40010,11 +43968,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -40031,7 +43989,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40052,7 +44010,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40073,7 +44031,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40094,12 +44052,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -40115,7 +44073,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40127,6 +44085,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -40136,28 +44106,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40174,16 +44123,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -40195,46 +44144,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -40248,7 +44211,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -40262,7 +44225,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -40279,11 +44242,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40300,11 +44263,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -40318,7 +44281,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -40332,7 +44295,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -40346,7 +44309,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -40363,15 +44326,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -40388,7 +44372,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40409,7 +44393,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -40430,7 +44414,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40451,11 +44435,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40465,11 +44449,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40479,11 +44463,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40493,11 +44477,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40507,11 +44491,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40521,11 +44505,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40535,11 +44519,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40556,7 +44540,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -40570,7 +44554,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -40584,7 +44568,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -40598,7 +44582,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -40612,7 +44596,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -40626,7 +44610,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -40647,7 +44631,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -40661,7 +44645,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -40687,7 +44671,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -40703,12 +44687,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -40724,12 +44708,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -40745,12 +44729,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -40762,11 +44746,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40783,154 +44767,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -40938,19 +44869,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -40965,7 +44890,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40979,7 +45200,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -40993,7 +45214,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -41007,7 +45228,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -41024,17 +45245,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -41042,29 +45268,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41073,17 +45366,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -41091,13 +45384,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -41105,13 +45398,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -41119,13 +45433,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -41136,63 +45450,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -41209,11 +45502,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -41227,10 +45520,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -41244,11 +45537,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -41262,7 +45618,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -41283,7 +45639,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -41304,24 +45660,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -41335,24 +45681,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -41362,11 +45698,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -41383,11 +45761,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -41404,78 +45824,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -41485,29 +45849,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41520,8 +45884,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -41541,15 +45905,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41562,8 +45940,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -41583,8 +45961,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -41595,8 +46070,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -41610,12 +46085,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -41635,8 +46193,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -41656,7 +46214,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -41673,11 +46273,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -41694,28 +46294,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -41724,7 +46303,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -41745,29 +46324,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41780,15 +46401,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41801,15 +46436,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41822,15 +46513,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41843,18 +46562,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -41864,29 +46597,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41899,8 +46646,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -41920,11 +46667,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -41941,7 +46688,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -41962,43 +46709,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -42011,43 +46730,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -42060,43 +46751,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -42109,40 +46772,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -42158,36 +46839,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -42207,43 +46916,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -42256,15 +46965,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -42277,26 +47014,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -42312,7 +47057,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -42326,7 +47398,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -42343,46 +47415,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -42396,7 +47433,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -42413,51 +47450,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -42466,12 +47466,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -42483,12 +47481,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -42504,11 +47648,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -42525,11 +47711,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -42546,11 +47732,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -42567,11 +47753,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -42588,30 +47774,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -42627,7 +48264,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -42648,15 +48285,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -42683,7 +48320,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -42695,28 +48346,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -42726,7 +48355,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -42740,7 +48369,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -42754,7 +48383,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -42775,97 +48404,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -42880,7 +48418,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -42897,11 +48435,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -42922,7 +48565,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -42945,19 +48588,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -42965,42 +48608,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -43011,34 +48668,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -43048,7 +48677,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -43076,15 +48705,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -43097,7 +48726,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -43118,62 +48747,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -43183,14 +48768,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -43204,18 +48789,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -43225,18 +48861,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -43256,89 +48955,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -43349,20 +48971,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -43372,237 +48980,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -43617,7 +48994,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -43634,53 +49011,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -43697,11 +49032,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -43718,11 +49053,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -43739,11 +49074,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -43760,11 +49095,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -43781,397 +49116,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -44179,13 +49134,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -44193,13 +49148,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -44207,13 +49162,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -44221,13 +49176,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -44235,13 +49190,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -44249,13 +49204,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -44263,64 +49218,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -44330,7 +49239,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -44344,7 +49253,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -44358,7 +49267,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -44372,7 +49281,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -44386,7 +49295,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -44400,7 +49309,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -44414,7 +49323,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -44428,7 +49337,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -44449,13 +49358,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -44463,80 +49372,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -44546,168 +49435,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -44720,71 +49449,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -44818,7 +49519,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -44839,77 +49582,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -44923,7 +49596,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -44937,7 +49610,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -44951,7 +49624,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -44968,81 +49641,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -45056,7 +49715,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -45073,61 +49732,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -45147,7 +49827,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -45163,11 +49843,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -45184,11 +49864,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -45205,12 +49885,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -45226,12 +49906,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -45247,12 +49927,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -45268,11 +49948,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -45289,84 +49969,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -45383,11 +49986,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -45404,15 +50007,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -45425,7 +50028,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -45444,7 +50047,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -45455,7 +50058,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -45466,8 +50069,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -45477,7 +50080,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -45488,8 +50091,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -45510,8 +50113,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -45532,8 +50135,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -45554,8 +50157,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -45576,8 +50179,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -45598,8 +50201,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -45620,8 +50223,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -45642,7 +50245,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -45657,15 +50436,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -45675,18 +50454,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -45697,18 +50476,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -45719,18 +50498,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -45741,18 +50520,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -45763,18 +50542,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -45785,18 +50564,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -45807,18 +50586,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -45829,18 +50608,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -45850,84 +50629,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -45940,7 +50773,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -45952,7 +50785,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -45964,7 +50797,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -45976,7 +50809,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -45988,7 +50821,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -46000,7 +50833,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46012,7 +50845,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -46024,7 +50857,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46036,7 +50869,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -46048,7 +50881,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46060,7 +50893,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46072,7 +50905,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46084,7 +50917,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -46096,7 +50929,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -46108,7 +50941,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46120,7 +50953,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -46132,7 +50965,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -46144,7 +50977,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -46163,12 +50996,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -46184,7 +51017,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46205,7 +51038,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46226,12 +51059,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -46247,7 +51080,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46268,7 +51101,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46289,16 +51122,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -46317,84 +51150,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -46404,7 +51171,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -46418,7 +51185,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -46439,7 +51206,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -46453,7 +51220,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -46474,12 +51241,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -46495,7 +51262,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -46509,7 +51276,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -46523,7 +51290,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -46544,7 +51311,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46565,7 +51332,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46591,7 +51358,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -46607,11 +51374,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -46628,7 +51395,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -46642,7 +51409,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -46663,7 +51430,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46684,7 +51451,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46701,79 +51468,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -46810,7 +51514,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -46824,10 +51542,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -46843,11 +51563,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -46864,11 +51584,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -46885,7 +51605,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -46906,7 +51626,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -46927,7 +51647,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -46948,12 +51668,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -46969,7 +51689,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -46981,6 +51701,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -46990,28 +51722,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -47028,16 +51739,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -47049,46 +51760,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -47102,7 +51827,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -47116,7 +51841,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -47133,11 +51858,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -47154,11 +51879,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -47172,7 +51897,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -47186,7 +51911,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -47200,7 +51925,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -47217,15 +51942,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -47242,7 +51988,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -47263,7 +52009,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -47284,7 +52030,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -47305,11 +52051,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47319,11 +52065,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47333,11 +52079,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47347,11 +52093,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47361,11 +52107,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47375,11 +52121,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47389,11 +52135,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47410,7 +52156,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -47424,7 +52170,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -47438,7 +52184,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -47452,7 +52198,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -47466,7 +52212,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -47480,7 +52226,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -47501,7 +52247,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -47515,7 +52261,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -47541,7 +52287,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -47557,12 +52303,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -47578,12 +52324,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -47599,12 +52345,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -47616,11 +52362,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -47637,154 +52383,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -47792,19 +52485,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -47819,7 +52506,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -47833,7 +52816,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -47847,7 +52830,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -47861,7 +52844,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -47878,17 +52861,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -47896,29 +52884,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -47927,17 +52982,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -47945,13 +53000,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -47959,13 +53014,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -47973,13 +53049,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -47990,63 +53066,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -48063,11 +53118,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -48081,10 +53136,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -48098,11 +53153,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -48116,7 +53234,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -48137,7 +53255,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -48158,24 +53276,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -48189,24 +53297,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -48216,11 +53314,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -48237,11 +53377,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -48258,78 +53440,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -48339,29 +53465,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48374,8 +53500,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -48395,15 +53521,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48416,8 +53556,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -48437,8 +53577,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -48449,8 +53686,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -48464,12 +53701,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -48489,8 +53809,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -48510,7 +53830,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -48527,11 +53889,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -48548,28 +53910,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -48578,7 +53919,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -48599,29 +53940,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48634,15 +54017,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48655,15 +54052,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48676,15 +54129,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48697,18 +54178,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -48718,29 +54213,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48753,8 +54262,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -48774,11 +54283,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -48795,7 +54304,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -48816,43 +54325,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48865,43 +54346,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48914,43 +54367,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48963,40 +54388,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -49012,36 +54455,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -49061,43 +54532,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -49110,15 +54581,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -49131,26 +54630,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -49166,7 +54673,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -49180,7 +55014,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -49197,46 +55031,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -49250,7 +55049,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -49267,51 +55066,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -49320,12 +55082,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -49337,12 +55097,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -49358,11 +55264,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -49379,11 +55327,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -49400,11 +55348,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -49421,11 +55369,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -49442,30 +55390,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -49481,7 +55880,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -49502,15 +55901,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -49537,7 +55936,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -49549,28 +55962,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -49580,7 +55971,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -49594,7 +55985,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -49608,7 +55999,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -49629,97 +56020,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -49734,7 +56034,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -49751,11 +56051,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -49776,7 +56181,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -49799,19 +56204,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -49819,42 +56224,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -49865,34 +56284,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -49902,7 +56293,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -49930,15 +56321,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -49951,7 +56342,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -49972,62 +56363,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -50037,14 +56384,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -50058,18 +56405,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -50079,18 +56477,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -50110,89 +56571,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -50203,20 +56587,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -50226,237 +56596,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -50471,7 +56610,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -50488,53 +56627,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -50551,11 +56648,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -50572,11 +56669,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -50593,11 +56690,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -50614,11 +56711,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -50635,397 +56732,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -51033,13 +56750,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -51047,13 +56764,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -51061,13 +56778,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -51075,13 +56792,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -51089,13 +56806,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -51103,13 +56820,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -51117,64 +56834,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -51184,7 +56855,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -51198,7 +56869,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -51212,7 +56883,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -51226,7 +56897,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -51240,7 +56911,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -51254,7 +56925,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -51268,7 +56939,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -51282,7 +56953,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -51303,13 +56974,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -51317,80 +56988,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -51400,168 +57051,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -51574,71 +57065,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -51672,7 +57135,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -51693,77 +57198,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -51777,7 +57212,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -51791,7 +57226,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -51805,7 +57240,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -51822,81 +57257,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -51910,7 +57331,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -51927,61 +57348,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -52001,7 +57443,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -52017,11 +57459,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -52038,11 +57480,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -52059,12 +57501,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -52080,12 +57522,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -52101,12 +57543,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -52122,11 +57564,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -52143,84 +57585,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -52237,11 +57602,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -52258,15 +57623,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -52279,7 +57644,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -52298,7 +57663,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -52309,7 +57674,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -52320,8 +57685,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -52331,7 +57696,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -52342,8 +57707,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -52364,8 +57729,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -52386,8 +57751,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -52408,8 +57773,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -52430,8 +57795,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -52452,8 +57817,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -52474,8 +57839,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -52496,7 +57861,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -52511,15 +58052,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -52529,18 +58070,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -52551,18 +58092,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -52573,18 +58114,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -52595,18 +58136,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -52617,18 +58158,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -52639,18 +58180,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -52661,18 +58202,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -52683,18 +58224,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -52704,84 +58245,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -52794,7 +58389,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -52806,7 +58401,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -52818,7 +58413,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -52830,7 +58425,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52842,7 +58437,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -52854,7 +58449,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52866,7 +58461,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -52878,7 +58473,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52890,7 +58485,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -52902,7 +58497,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52914,7 +58509,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52926,7 +58521,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52938,7 +58533,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -52950,7 +58545,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -52962,7 +58557,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52974,7 +58569,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -52986,7 +58581,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -52998,7 +58593,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -53017,12 +58612,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -53038,7 +58633,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53059,7 +58654,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53080,12 +58675,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -53101,7 +58696,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53122,7 +58717,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53143,16 +58738,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -53171,84 +58766,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -53258,7 +58787,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -53272,7 +58801,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -53293,7 +58822,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -53307,7 +58836,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -53328,12 +58857,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -53349,7 +58878,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -53363,7 +58892,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -53377,7 +58906,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -53398,7 +58927,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53419,7 +58948,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53445,7 +58974,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -53461,11 +58990,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -53482,7 +59011,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -53496,7 +59025,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -53517,7 +59046,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53538,7 +59067,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53555,79 +59084,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -53664,7 +59130,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -53678,10 +59158,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -53697,11 +59179,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -53718,11 +59200,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -53739,7 +59221,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -53760,7 +59242,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -53781,7 +59263,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -53802,12 +59284,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -53823,7 +59305,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -53835,6 +59317,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -53844,28 +59338,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -53882,16 +59355,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -53903,46 +59376,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -53956,7 +59443,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -53970,7 +59457,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -53987,11 +59474,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -54008,11 +59495,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -54026,7 +59513,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -54040,7 +59527,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -54054,7 +59541,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -54071,15 +59558,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -54096,7 +59604,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -54117,7 +59625,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -54138,7 +59646,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -54159,11 +59667,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54173,11 +59681,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54187,11 +59695,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54201,11 +59709,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54215,11 +59723,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54229,11 +59737,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54243,11 +59751,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54264,7 +59772,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -54278,7 +59786,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -54292,7 +59800,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -54306,7 +59814,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -54320,7 +59828,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -54334,7 +59842,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -54355,7 +59863,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -54369,7 +59877,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -54395,7 +59903,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -54411,12 +59919,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -54432,12 +59940,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -54453,12 +59961,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -54470,11 +59978,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -54491,154 +59999,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -54646,19 +60101,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -54673,7 +60122,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -54687,7 +60432,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -54701,7 +60446,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -54715,7 +60460,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -54732,17 +60477,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -54750,29 +60500,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -54781,17 +60598,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -54799,13 +60616,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -54813,13 +60630,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -54827,13 +60665,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -54844,63 +60682,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -54917,11 +60734,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -54935,10 +60752,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -54952,11 +60769,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -54970,7 +60850,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -54991,7 +60871,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -55012,24 +60892,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -55043,24 +60913,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -55070,11 +60930,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -55091,11 +60993,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -55112,78 +61056,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -55193,29 +61081,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55228,8 +61116,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -55249,15 +61137,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55270,8 +61172,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -55291,8 +61193,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -55303,8 +61302,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -55318,12 +61317,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -55343,8 +61425,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -55364,7 +61446,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -55381,11 +61505,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -55402,28 +61526,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -55432,7 +61535,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -55453,29 +61556,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55488,15 +61633,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55509,15 +61668,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55530,15 +61745,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55551,18 +61794,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -55572,29 +61829,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55607,8 +61878,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -55628,11 +61899,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -55649,7 +61920,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -55670,43 +61941,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55719,43 +61962,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55768,43 +61983,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55817,40 +62004,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -55866,36 +62071,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -55915,43 +62148,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55964,15 +62197,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55985,26 +62246,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -56020,7 +62289,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -56034,7 +62630,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -56051,46 +62647,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -56104,7 +62665,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -56121,51 +62682,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -56174,12 +62698,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -56191,12 +62713,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -56212,11 +62880,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -56233,11 +62943,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -56254,11 +62964,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -56275,11 +62985,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -56296,30 +63006,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -56335,7 +63496,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -56356,15 +63517,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -56391,7 +63552,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -56403,28 +63578,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -56434,7 +63587,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -56448,7 +63601,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -56462,7 +63615,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -56483,97 +63636,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -56588,7 +63650,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -56605,11 +63667,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -56630,7 +63797,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -56653,19 +63820,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -56673,42 +63840,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -56719,34 +63900,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -56756,7 +63909,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -56784,15 +63937,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -56805,7 +63958,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -56826,62 +63979,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -56891,14 +64000,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -56912,18 +64021,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -56933,18 +64093,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -56964,89 +64187,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -57057,20 +64203,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -57080,237 +64212,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -57325,7 +64226,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -57342,53 +64243,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -57405,11 +64264,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -57426,11 +64285,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -57447,11 +64306,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -57468,11 +64327,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -57489,397 +64348,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -57887,13 +64366,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -57901,13 +64380,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -57915,13 +64394,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -57929,13 +64408,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -57943,13 +64422,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -57957,13 +64436,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -57971,64 +64450,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -58038,7 +64471,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -58052,7 +64485,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -58066,7 +64499,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -58080,7 +64513,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -58094,7 +64527,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -58108,7 +64541,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -58122,7 +64555,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -58136,7 +64569,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -58157,13 +64590,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -58171,80 +64604,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -58254,168 +64667,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -58428,71 +64681,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -58526,7 +64751,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -58547,77 +64814,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -58631,7 +64828,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -58645,7 +64842,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -58659,7 +64856,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -58676,81 +64873,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -58764,7 +64947,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -58781,61 +64964,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -58855,7 +65059,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -58871,11 +65075,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -58892,11 +65096,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -58913,12 +65117,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -58934,12 +65138,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -58955,12 +65159,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -58976,11 +65180,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -58997,84 +65201,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -59091,11 +65218,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -59112,15 +65239,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -59133,7 +65260,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -59152,7 +65279,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -59163,7 +65290,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -59174,8 +65301,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -59185,7 +65312,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -59196,8 +65323,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -59218,8 +65345,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -59240,8 +65367,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -59262,8 +65389,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -59284,8 +65411,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -59306,8 +65433,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -59328,8 +65455,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -59350,7 +65477,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -59365,15 +65668,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -59383,18 +65686,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -59405,18 +65708,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -59427,18 +65730,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -59449,18 +65752,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -59471,18 +65774,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -59493,18 +65796,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -59515,18 +65818,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -59537,18 +65840,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -59558,84 +65861,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -59648,7 +66005,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -59660,7 +66017,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -59672,7 +66029,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -59684,7 +66041,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59696,7 +66053,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -59708,7 +66065,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59720,7 +66077,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -59732,7 +66089,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59744,7 +66101,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -59756,7 +66113,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59768,7 +66125,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59780,7 +66137,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59792,7 +66149,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -59804,7 +66161,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -59816,7 +66173,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59828,7 +66185,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -59840,7 +66197,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -59852,7 +66209,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -59871,12 +66228,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -59892,7 +66249,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59913,7 +66270,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59934,12 +66291,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -59955,7 +66312,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59976,7 +66333,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59997,16 +66354,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -60025,84 +66382,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -60112,7 +66403,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -60126,7 +66417,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -60147,7 +66438,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -60161,7 +66452,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -60182,12 +66473,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -60203,7 +66494,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60217,7 +66508,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -60231,7 +66522,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -60252,7 +66543,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -60273,7 +66564,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -60299,7 +66590,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -60315,11 +66606,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -60336,7 +66627,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60350,7 +66641,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60371,7 +66662,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -60392,7 +66683,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -60409,79 +66700,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -60518,7 +66746,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -60532,10 +66774,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -60551,11 +66795,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -60572,11 +66816,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -60593,7 +66837,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60614,7 +66858,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60635,7 +66879,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60656,12 +66900,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -60677,7 +66921,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60689,6 +66933,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -60698,28 +66954,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60736,16 +66971,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -60757,46 +66992,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -60810,7 +67059,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -60824,7 +67073,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -60841,11 +67090,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60862,11 +67111,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60880,7 +67129,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60894,7 +67143,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60908,7 +67157,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60925,15 +67174,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -60950,7 +67220,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60971,7 +67241,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -60992,7 +67262,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -61013,11 +67283,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61027,11 +67297,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61041,11 +67311,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61055,11 +67325,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61069,11 +67339,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61083,11 +67353,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61097,11 +67367,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61118,7 +67388,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -61132,7 +67402,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -61146,7 +67416,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -61160,7 +67430,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -61174,7 +67444,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -61188,7 +67458,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -61209,7 +67479,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -61223,7 +67493,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -61249,7 +67519,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -61265,12 +67535,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -61286,12 +67556,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -61307,12 +67577,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -61324,11 +67594,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -61345,154 +67615,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -61500,19 +67717,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -61527,7 +67738,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -61541,7 +68048,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -61555,7 +68062,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -61569,7 +68076,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -61586,17 +68093,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -61604,29 +68116,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -61635,17 +68214,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -61653,13 +68232,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -61667,13 +68246,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -61681,13 +68281,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -61698,63 +68298,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -61771,11 +68350,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -61789,10 +68368,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -61806,11 +68385,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -61824,7 +68466,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -61845,7 +68487,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -61866,24 +68508,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -61897,24 +68529,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -61924,11 +68546,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -61945,11 +68609,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -61966,78 +68672,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -62047,29 +68697,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62082,8 +68732,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -62103,15 +68753,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62124,8 +68788,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -62145,8 +68809,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -62157,8 +68918,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -62172,12 +68933,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -62197,8 +69041,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -62218,7 +69062,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -62235,11 +69121,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -62256,28 +69142,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -62286,7 +69151,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -62307,29 +69172,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62342,15 +69249,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62363,15 +69284,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62384,15 +69361,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62405,18 +69410,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -62426,29 +69445,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62461,8 +69494,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -62482,11 +69515,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -62503,7 +69536,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -62524,43 +69557,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62573,43 +69578,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62622,43 +69599,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62671,40 +69620,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -62720,36 +69687,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -62769,43 +69764,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62818,15 +69813,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62839,26 +69862,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -62874,7 +69905,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -62888,7 +70246,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -62905,46 +70263,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -62958,7 +70281,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -62975,51 +70298,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -63028,12 +70314,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -63045,12 +70329,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -63066,11 +70496,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -63087,11 +70559,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -63108,11 +70580,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -63129,11 +70601,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -63150,30 +70622,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -63189,7 +71112,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -63210,15 +71133,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -63245,7 +71168,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -63257,28 +71194,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -63288,7 +71203,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -63302,7 +71217,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -63316,7 +71231,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -63337,97 +71252,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -63442,7 +71266,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -63459,11 +71283,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -63484,7 +71413,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -63507,19 +71436,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -63527,42 +71456,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -63573,34 +71516,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -63610,7 +71525,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -63638,15 +71553,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -63659,7 +71574,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -63680,62 +71595,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -63745,14 +71616,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -63766,18 +71637,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -63787,18 +71709,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -63818,89 +71803,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -63911,20 +71819,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -63934,237 +71828,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -64179,7 +71842,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -64196,53 +71859,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -64259,11 +71880,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -64280,11 +71901,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -64301,11 +71922,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -64322,11 +71943,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -64343,397 +71964,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -64741,13 +71982,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -64755,13 +71996,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -64769,13 +72010,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -64783,13 +72024,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -64797,13 +72038,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -64811,13 +72052,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -64825,64 +72066,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -64892,7 +72087,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -64906,7 +72101,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -64920,7 +72115,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -64934,7 +72129,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -64948,7 +72143,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -64962,7 +72157,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -64976,7 +72171,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -64990,7 +72185,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -65011,13 +72206,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -65025,80 +72220,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -65108,168 +72283,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -65282,71 +72297,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -65380,7 +72367,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -65401,77 +72430,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -65485,7 +72444,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -65499,7 +72458,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -65513,7 +72472,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -65530,81 +72489,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -65618,7 +72563,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -65635,61 +72580,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -65709,7 +72675,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -65725,11 +72691,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -65746,11 +72712,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -65767,12 +72733,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -65788,12 +72754,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -65809,12 +72775,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -65830,11 +72796,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -65851,84 +72817,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -65945,11 +72834,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -65966,15 +72855,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -65987,7 +72876,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -66006,7 +72895,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -66017,7 +72906,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -66028,8 +72917,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -66039,7 +72928,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -66050,8 +72939,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -66072,8 +72961,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -66094,8 +72983,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -66116,8 +73005,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -66138,8 +73027,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -66160,8 +73049,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -66182,8 +73071,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -66204,7 +73093,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -66219,15 +73284,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -66237,18 +73302,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -66259,18 +73324,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -66281,18 +73346,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -66303,18 +73368,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -66325,18 +73390,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -66347,18 +73412,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -66369,18 +73434,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -66391,18 +73456,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -66412,84 +73477,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -66502,7 +73621,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -66514,7 +73633,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -66526,7 +73645,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -66538,7 +73657,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66550,7 +73669,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -66562,7 +73681,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66574,7 +73693,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -66586,7 +73705,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66598,7 +73717,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -66610,7 +73729,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66622,7 +73741,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66634,7 +73753,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66646,7 +73765,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -66658,7 +73777,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -66670,7 +73789,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66682,7 +73801,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -66694,7 +73813,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -66706,7 +73825,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -66725,12 +73844,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -66746,7 +73865,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66767,7 +73886,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66788,12 +73907,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -66809,7 +73928,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66830,7 +73949,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66851,16 +73970,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -66879,84 +73998,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -66966,7 +74019,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -66980,7 +74033,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -67001,7 +74054,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -67015,7 +74068,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -67036,12 +74089,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -67057,7 +74110,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67071,7 +74124,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -67085,7 +74138,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -67106,7 +74159,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -67127,7 +74180,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -67153,7 +74206,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -67169,11 +74222,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -67190,7 +74243,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67204,7 +74257,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67225,7 +74278,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -67246,7 +74299,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -67263,79 +74316,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -67372,7 +74362,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -67386,10 +74390,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -67405,11 +74411,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -67426,11 +74432,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -67447,7 +74453,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67468,7 +74474,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67489,7 +74495,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67510,12 +74516,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -67531,7 +74537,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67543,6 +74549,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -67552,28 +74570,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67590,16 +74587,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -67611,46 +74608,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -67664,7 +74675,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -67678,7 +74689,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -67695,11 +74706,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67716,11 +74727,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67734,7 +74745,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67748,7 +74759,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67762,7 +74773,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67779,15 +74790,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -67804,7 +74836,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67825,7 +74857,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -67846,7 +74878,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67867,11 +74899,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67881,11 +74913,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67895,11 +74927,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67909,11 +74941,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67923,11 +74955,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67937,11 +74969,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67951,11 +74983,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67972,7 +75004,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -67986,7 +75018,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -68000,7 +75032,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -68014,7 +75046,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -68028,7 +75060,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -68042,7 +75074,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -68063,7 +75095,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -68077,7 +75109,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -68103,7 +75135,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -68119,12 +75151,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -68140,12 +75172,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -68161,12 +75193,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -68178,11 +75210,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -68199,154 +75231,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -68354,19 +75333,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -68381,7 +75354,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -68395,7 +75664,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -68409,7 +75678,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -68423,7 +75692,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -68440,17 +75709,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -68458,29 +75732,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -68489,17 +75830,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -68507,13 +75848,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -68521,13 +75862,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -68535,13 +75897,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -68552,63 +75914,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -68625,11 +75966,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -68643,10 +75984,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -68660,11 +76001,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -68678,7 +76082,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -68699,7 +76103,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -68720,24 +76124,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -68751,24 +76145,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -68778,11 +76162,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -68799,11 +76225,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -68820,78 +76288,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -68901,29 +76313,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -68936,8 +76348,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -68957,15 +76369,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -68978,8 +76404,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -68999,8 +76425,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -69011,8 +76534,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -69026,12 +76549,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -69051,8 +76657,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -69072,7 +76678,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -69089,11 +76737,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -69110,28 +76758,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -69140,7 +76767,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -69161,29 +76788,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69196,15 +76865,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69217,15 +76900,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69238,15 +76977,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69259,18 +77026,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -69280,29 +77061,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69315,8 +77110,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -69336,11 +77131,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -69357,7 +77152,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -69378,43 +77173,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69427,43 +77194,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69476,43 +77215,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69525,40 +77236,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -69574,36 +77303,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -69623,43 +77380,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69672,15 +77429,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69693,26 +77478,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -69728,7 +77521,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -69742,7 +77862,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -69759,46 +77879,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -69812,7 +77897,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -69829,51 +77914,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -69882,12 +77930,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -69899,12 +77945,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -69920,11 +78112,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -69941,11 +78175,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -69962,11 +78196,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -69983,11 +78217,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -70004,30 +78238,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -70043,7 +78728,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -70064,15 +78749,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -70099,7 +78784,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -70111,28 +78810,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -70142,7 +78819,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -70156,7 +78833,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -70170,7 +78847,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -70191,97 +78868,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -70296,7 +78882,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -70313,11 +78899,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -70338,7 +79029,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -70361,19 +79052,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -70381,42 +79072,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -70427,34 +79132,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -70464,7 +79141,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -70492,15 +79169,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -70513,7 +79190,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -70534,62 +79211,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -70599,14 +79232,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -70620,18 +79253,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -70641,18 +79325,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -70672,89 +79419,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -70765,20 +79435,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -70788,237 +79444,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -71033,7 +79458,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -71050,53 +79475,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -71113,11 +79496,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -71134,11 +79517,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -71155,11 +79538,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -71176,11 +79559,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -71197,397 +79580,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -71595,13 +79598,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -71609,13 +79612,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -71623,13 +79626,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -71637,13 +79640,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -71651,13 +79654,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -71665,13 +79668,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -71679,64 +79682,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -71746,7 +79703,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -71760,7 +79717,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -71774,7 +79731,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -71788,7 +79745,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -71802,7 +79759,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -71816,7 +79773,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -71830,7 +79787,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -71844,7 +79801,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -71865,13 +79822,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -71879,80 +79836,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -71962,168 +79899,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -72136,71 +79913,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -72234,7 +79983,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -72255,77 +80046,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -72339,7 +80060,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -72353,7 +80074,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -72367,7 +80088,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -72384,81 +80105,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -72472,7 +80179,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -72489,61 +80196,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -72563,7 +80291,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -72579,11 +80307,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -72600,11 +80328,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -72621,12 +80349,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -72642,12 +80370,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -72663,12 +80391,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -72684,11 +80412,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -72705,84 +80433,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -72799,11 +80450,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -72820,15 +80471,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -72841,7 +80492,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -72860,7 +80511,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -72871,7 +80522,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -72882,8 +80533,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -72893,7 +80544,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -72904,8 +80555,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -72926,8 +80577,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -72948,8 +80599,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -72970,8 +80621,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -72992,8 +80643,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -73014,8 +80665,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -73036,8 +80687,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -73058,7 +80709,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -73073,15 +80900,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -73091,18 +80918,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -73113,18 +80940,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -73135,18 +80962,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -73157,18 +80984,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -73179,18 +81006,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -73201,18 +81028,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -73223,18 +81050,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -73245,18 +81072,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -73266,84 +81093,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -73356,7 +81237,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -73368,7 +81249,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -73380,7 +81261,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -73392,7 +81273,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73404,7 +81285,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -73416,7 +81297,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73428,7 +81309,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -73440,7 +81321,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73452,7 +81333,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -73464,7 +81345,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73476,7 +81357,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73488,7 +81369,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73500,7 +81381,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -73512,7 +81393,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -73524,7 +81405,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73536,7 +81417,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -73548,7 +81429,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -73560,7 +81441,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -73579,12 +81460,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -73600,7 +81481,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73621,7 +81502,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73642,12 +81523,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -73663,7 +81544,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73684,7 +81565,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73705,16 +81586,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -73733,84 +81614,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -73820,7 +81635,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -73834,7 +81649,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -73855,7 +81670,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -73869,7 +81684,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -73890,12 +81705,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -73911,7 +81726,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -73925,7 +81740,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -73939,7 +81754,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -73960,7 +81775,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73981,7 +81796,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -74007,7 +81822,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -74023,11 +81838,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -74044,7 +81859,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -74058,7 +81873,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -74079,7 +81894,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -74100,7 +81915,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -74117,79 +81932,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -74226,7 +81978,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -74240,10 +82006,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -74259,11 +82027,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -74280,11 +82048,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -74301,7 +82069,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74322,7 +82090,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74343,7 +82111,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74364,12 +82132,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -74385,7 +82153,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74397,6 +82165,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -74406,28 +82186,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74444,16 +82203,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -74465,46 +82224,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -74518,7 +82291,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -74532,7 +82305,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -74549,11 +82322,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74570,11 +82343,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -74588,7 +82361,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -74602,7 +82375,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -74616,7 +82389,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -74633,15 +82406,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -74658,7 +82452,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74679,7 +82473,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -74700,7 +82494,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74721,11 +82515,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74735,11 +82529,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74749,11 +82543,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74763,11 +82557,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74777,11 +82571,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74791,11 +82585,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74805,11 +82599,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74826,7 +82620,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -74840,7 +82634,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -74854,7 +82648,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -74868,7 +82662,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -74882,7 +82676,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -74896,7 +82690,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -74917,7 +82711,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -74931,7 +82725,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -74957,7 +82751,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -74973,12 +82767,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -74994,12 +82788,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -75015,12 +82809,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -75032,11 +82826,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -75053,154 +82847,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -75208,19 +82949,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -75235,7 +82970,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -75249,7 +83280,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -75263,7 +83294,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -75277,7 +83308,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -75294,17 +83325,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -75312,29 +83348,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -75343,17 +83446,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -75361,13 +83464,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -75375,13 +83478,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -75389,13 +83513,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -75406,63 +83530,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -75479,11 +83582,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -75497,10 +83600,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -75514,11 +83617,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -75532,7 +83698,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -75553,7 +83719,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -75574,24 +83740,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -75605,24 +83761,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -75632,11 +83778,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -75653,11 +83841,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -75674,78 +83904,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -75755,29 +83929,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -75790,8 +83964,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -75811,15 +83985,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -75832,8 +84020,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -75853,8 +84041,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -75865,8 +84150,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -75880,12 +84165,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -75905,8 +84273,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -75926,7 +84294,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -75943,11 +84353,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -75964,28 +84374,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -75994,7 +84383,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -76015,29 +84404,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76050,15 +84481,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76071,15 +84516,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76092,15 +84593,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76113,18 +84642,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -76134,29 +84677,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76169,8 +84726,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -76190,11 +84747,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -76211,7 +84768,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -76232,43 +84789,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76281,43 +84810,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76330,43 +84831,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76379,40 +84852,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -76428,36 +84919,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -76477,43 +84996,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76526,15 +85045,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76547,26 +85094,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -76582,7 +85137,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -76596,7 +85478,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -76613,46 +85495,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -76666,7 +85513,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -76683,51 +85530,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -76736,12 +85546,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -76753,12 +85561,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -76774,11 +85728,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -76795,11 +85791,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -76816,11 +85812,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -76837,11 +85833,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -76858,30 +85854,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -76897,7 +86344,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -76918,15 +86365,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76953,7 +86400,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -76965,28 +86426,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -76996,7 +86435,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -77010,7 +86449,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -77024,7 +86463,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -77045,97 +86484,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -77150,7 +86498,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -77167,11 +86515,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -77192,7 +86645,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -77215,19 +86668,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -77235,42 +86688,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -77281,34 +86748,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -77318,7 +86757,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -77346,15 +86785,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -77367,7 +86806,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -77388,62 +86827,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -77453,14 +86848,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -77474,18 +86869,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -77495,18 +86941,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -77526,89 +87035,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -77619,20 +87051,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -77642,237 +87060,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -77887,7 +87074,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -77904,53 +87091,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -77967,11 +87112,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -77988,11 +87133,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -78009,11 +87154,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -78030,11 +87175,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -78051,397 +87196,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -78449,13 +87214,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -78463,13 +87228,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -78477,13 +87242,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -78491,13 +87256,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -78505,13 +87270,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -78519,13 +87284,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -78533,64 +87298,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -78600,7 +87319,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -78614,7 +87333,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -78628,7 +87347,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -78642,7 +87361,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -78656,7 +87375,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -78670,7 +87389,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -78684,7 +87403,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -78698,7 +87417,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -78719,13 +87438,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -78733,80 +87452,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -78816,168 +87515,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -78990,71 +87529,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -79088,7 +87599,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -79109,77 +87662,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -79193,7 +87676,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -79207,7 +87690,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -79221,7 +87704,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -79238,81 +87721,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -79326,7 +87795,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -79343,61 +87812,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -79417,7 +87907,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -79433,11 +87923,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -79454,11 +87944,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -79475,12 +87965,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -79496,12 +87986,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -79517,12 +88007,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -79538,11 +88028,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -79559,84 +88049,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -79653,11 +88066,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -79674,15 +88087,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -79695,7 +88108,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -79714,7 +88127,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -79725,7 +88138,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -79736,8 +88149,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -79747,7 +88160,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -79758,8 +88171,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -79780,8 +88193,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -79802,8 +88215,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -79824,8 +88237,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -79846,8 +88259,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -79868,8 +88281,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -79890,8 +88303,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -79912,7 +88325,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -79927,15 +88516,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -79945,18 +88534,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -79967,18 +88556,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -79989,18 +88578,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -80011,18 +88600,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -80033,18 +88622,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -80055,18 +88644,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -80077,18 +88666,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -80099,18 +88688,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -80120,84 +88709,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -80210,7 +88853,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -80222,7 +88865,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -80234,7 +88877,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -80246,7 +88889,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80258,7 +88901,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -80270,7 +88913,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80282,7 +88925,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -80294,7 +88937,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80306,7 +88949,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -80318,7 +88961,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80330,7 +88973,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80342,7 +88985,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80354,7 +88997,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -80366,7 +89009,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -80378,7 +89021,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80390,7 +89033,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -80402,7 +89045,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -80414,7 +89057,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -80433,12 +89076,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -80454,7 +89097,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80475,7 +89118,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80496,12 +89139,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -80517,7 +89160,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80538,7 +89181,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80559,16 +89202,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -80587,84 +89230,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -80674,7 +89251,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -80688,7 +89265,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -80709,7 +89286,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -80723,7 +89300,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -80744,12 +89321,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -80765,7 +89342,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -80779,7 +89356,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -80793,7 +89370,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -80814,7 +89391,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80835,7 +89412,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80861,7 +89438,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -80877,11 +89454,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -80898,7 +89475,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -80912,7 +89489,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -80933,7 +89510,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80954,7 +89531,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80971,79 +89548,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -81080,7 +89594,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -81094,10 +89622,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -81113,11 +89643,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -81134,11 +89664,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -81155,7 +89685,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81176,7 +89706,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81197,7 +89727,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81218,12 +89748,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -81239,7 +89769,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81251,6 +89781,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -81260,28 +89802,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81298,16 +89819,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -81319,46 +89840,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -81372,7 +89907,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -81386,7 +89921,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -81403,11 +89938,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81424,11 +89959,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -81442,7 +89977,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -81456,7 +89991,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -81470,7 +90005,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -81487,15 +90022,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -81512,7 +90068,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81533,7 +90089,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -81554,7 +90110,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81575,11 +90131,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81589,11 +90145,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81603,11 +90159,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81617,11 +90173,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81631,11 +90187,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81645,11 +90201,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81659,11 +90215,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81680,7 +90236,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -81694,7 +90250,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -81708,7 +90264,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -81722,7 +90278,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -81736,7 +90292,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -81750,7 +90306,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -81771,7 +90327,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -81785,7 +90341,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -81811,7 +90367,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -81827,12 +90383,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -81848,12 +90404,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -81869,12 +90425,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -81886,11 +90442,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81907,154 +90463,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -82062,19 +90565,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -82089,7 +90586,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -82103,7 +90896,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -82117,7 +90910,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -82131,7 +90924,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -82148,17 +90941,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -82166,29 +90964,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -82197,17 +91062,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -82215,13 +91080,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -82229,13 +91094,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -82243,13 +91129,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -82260,63 +91146,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -82333,11 +91198,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -82351,10 +91216,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -82368,11 +91233,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -82386,7 +91314,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -82407,7 +91335,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -82428,24 +91356,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -82459,24 +91377,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -82486,11 +91394,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -82507,11 +91457,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -82528,78 +91520,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -82609,29 +91545,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -82644,8 +91580,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -82665,15 +91601,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -82686,8 +91636,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -82707,8 +91657,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -82719,8 +91766,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -82734,12 +91781,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -82759,8 +91889,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -82780,7 +91910,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -82797,11 +91969,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -82818,28 +91990,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -82848,7 +91999,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -82867,7 +92018,7 @@
     {
       "direction": "ingress",
       "handle": 16777217,
-      "name": "tbl_act",
+      "name": "tbl_act_0",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -82877,8 +92028,8 @@
             "size": 0,
             "stage_table_type": "ternary_match",
             "logical_table_id": 0,
-            "has_attached_gateway": false,
-            "default_next_table": 1,
+            "has_attached_gateway": true,
+            "default_next_table": 255,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -83731,956 +92882,14 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_0",
-                  "action_handle": 536870913,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 1,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_0",
-                      "next_table_logical_id": 1,
-                      "next_table_stage_no": 0
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_0",
-          "handle": 536870913,
-          "primitives": [
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu_ipv4.$valid" }
-            },
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu_udp.$valid" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870913,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777218,
-      "name": "tbl_act_0",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 0,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 1,
-            "has_attached_gateway": true,
-            "default_next_table": 16,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 5 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 0,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
                   "action_name": "act",
-                  "action_handle": 536870914,
+                  "action_handle": 536870913,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 16,
+                  "next_table_full": 255,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_1",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 1
-                    }
-                  ],
+                  "vliw_instruction_full": 65,
+                  "next_tables": [],
                   "immediate_fields": []
                 }
               ]
@@ -84697,12 +92906,22 @@
       "actions": [
         {
           "name": "act",
-          "handle": 536870914,
+          "handle": 536870913,
           "primitives": [
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "spgw_normalizer_hasReturned" },
+              "dst": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "dst_mask": { "type": "immediate", "name": "511" },
+              "src1": { "type": "phv", "name": "hdr.packet_out.egress_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": {
+                "type": "phv",
+                "name": "fabric_metadata.is_controller_packet_out"
+              },
               "dst_mask": { "type": "immediate", "name": "1" },
               "src1": { "type": "immediate", "name": "1" }
             }
@@ -84725,7 +92944,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870914,
+      "default_action_handle": 536870913,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -84743,24 +92962,519 @@
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 16, "true": 1 },
-          "memory_resource_allocation": { "memory_unit": 4, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 1, "true": 0 },
+          "memory_resource_allocation": { "memory_unit": 5, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "tbl_act_1", "true": "tbl_act_0" },
-          "logical_table_id": 1,
+          "next_table_names": { "false": "FabricIngress.spgw.interfaces", "true": "tbl_act_0" },
+          "logical_table_id": 0,
           "stage_number": 0,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.gtpu.$valid", "start_bit": 3, "bit_width": 1 } ],
-      "condition": "(!(hdr.gtpu.$valid == 1))",
+      "condition_fields": [ { "name": "hdr.packet_out.$valid", "start_bit": 1, "bit_width": 1 } ],
+      "condition": "(hdr.packet_out.$valid == 1)",
       "size": 0
     },
     {
+      "direction": "ingress",
+      "handle": 16777218,
+      "name": "FabricIngress.spgw.interfaces",
+      "table_type": "match",
+      "size": 128,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 0,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 1,
+            "has_attached_gateway": false,
+            "default_next_table": 16,
+            "pack_format": [
+              {
+                "table_word_width": 47,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ipv4_dst_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 24
+                      },
+                      {
+                        "field_name": "ipv4_dst_addr",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "gtpu_is_valid",
+                        "lsb_mem_word_offset": 37,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 38,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 5
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 0 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 0
+            },
+            "result_physical_buses": [ 1 ],
+            "ternary_indirection_stage_table": {
+              "action_format": [
+                {
+                  "action_name": "FabricIngress.spgw.iface_miss",
+                  "action_handle": 536870915,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 4294967295,
+                  "next_table_full": 81,
+                  "vliw_instruction": -1,
+                  "vliw_instruction_full": 68,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_3",
+                      "next_table_logical_id": 1,
+                      "next_table_stage_no": 5
+                    }
+                  ],
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "FabricIngress.spgw.load_iface",
+                  "action_handle": 536870914,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 81,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 66,
+                  "next_tables": [
+                    {
+                      "next_table_name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_gtpu",
+                      "next_table_logical_id": 0,
+                      "next_table_stage_no": 1
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ],
+              "memory_resource_allocation": null,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "entries": [ { "entry_number": 0, "fields": [] } ],
+                  "table_word_width": 0,
+                  "number_memory_units_per_table_word": 0
+                }
+              ],
+              "logical_table_id": 1,
+              "stage_number": 0,
+              "stage_table_type": "ternary_indirection",
+              "size": 0
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554433,
+          "name": "FabricIngress.spgw.interfaces$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870915,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ipv4_dst_addr",
+          "global_name": "hdr.ipv4.dst_addr",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "position": 0,
+          "match_type": "lpm",
+          "is_valid": false,
+          "instance_name": "hdr.ipv4",
+          "field_name": "dst_addr"
+        },
+        {
+          "name": "gtpu_is_valid",
+          "global_name": "hdr.gtpu.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 1,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.gtpu",
+          "field_name": "$valid"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.iface_miss",
+          "handle": 536870915,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.load_iface",
+          "handle": 536870914,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.src_iface" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "action_param", "name": "src_iface" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.skip_spgw" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "src_iface",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 8
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554433,
+      "name": "FabricIngress.spgw.interfaces$action",
+      "table_type": "action",
+      "size": 4096,
+      "stage_tables": [
+        {
+          "stage_number": 0,
+          "size": 4096,
+          "stage_table_type": "action_data",
+          "logical_table_id": 1,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 4,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 3,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 2,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870915
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 4,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 3,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "src_iface"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 104,
+                      "field_name": "--padding_8_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 2,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "src_iface"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 72,
+                      "field_name": "--padding_8_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "src_iface"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 40,
+                      "field_name": "--padding_8_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "src_iface"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "--padding_8_31--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870914
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.iface_miss",
+          "handle": 536870915,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricIngress.spgw.load_iface",
+          "handle": 536870914,
+          "p4_parameters": [
+            {
+              "name": "src_iface",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 8
+            }
+          ]
+        }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
       "direction": "egress",
-      "handle": 16777252,
-      "name": "tbl_act_17",
+      "handle": 16777240,
+      "name": "tbl_act_6",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -84806,17013 +93520,9 @@
               }
             ],
             "memory_resource_allocation": null,
-            "result_physical_buses": [ 4 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 0,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_18",
-                  "action_handle": 536870970,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 3,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_18",
-                      "next_table_logical_id": 3,
-                      "next_table_stage_no": 0
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_18",
-          "handle": 536870970,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.eg_tstamp" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "eg_intr_md_from_prsr.global_tstamp" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870970,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "handle": 16777253,
-      "name": "tbl_act_18",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 0,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 3,
-            "has_attached_gateway": true,
-            "default_next_table": 255,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 3 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 0,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_17",
-                  "action_handle": 536870971,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 255,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 64,
-                  "next_tables": [],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_17",
-          "handle": 536870971,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870971,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_act_18",
-      "handle": 1879048193,
-      "name": "cond-19",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 4, "true": 3 },
-          "memory_resource_allocation": { "memory_unit": 3, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_19", "true": "tbl_act_18" },
-          "logical_table_id": 3,
-          "stage_number": 0,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "fabric_metadata.is_controller_packet_out",
-          "start_bit": 0,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(fabric_metadata.is_controller_packet_out == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_act_19",
-      "handle": 1879048194,
-      "name": "cond-20",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 5, "true": 4 },
-          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_spgw_egress_gtpu_encap", "true": "tbl_act_19" },
-          "logical_table_id": 4,
-          "stage_number": 0,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        { "name": "eg_intr_md.egress_port", "start_bit": 0, "bit_width": 8 },
-        { "name": "eg_intr_md.egress_port", "start_bit": 8, "bit_width": 1 }
-      ],
-      "condition": "(eg_intr_md.egress_port == 320)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777254,
-      "name": "tbl_act_19",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 0,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 4,
-            "has_attached_gateway": true,
-            "default_next_table": 255,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 2 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 0,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_19",
-                  "action_handle": 536870972,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 255,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
-                  "next_tables": [],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_19",
-          "handle": 536870972,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.packet_in.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.packet_in.ingress_port" },
-              "dst_mask": { "type": "immediate", "name": "511" },
-              "src1": { "type": "phv", "name": "ig_intr_md.ingress_port" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870972,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "handle": 16777255,
-      "name": "tbl_spgw_egress_gtpu_encap",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 0,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 5,
-            "has_attached_gateway": true,
-            "default_next_table": 6,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 1 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 0,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "FabricEgress.spgw_egress.gtpu_encap",
-                  "action_handle": 536870984,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 6,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 67,
-                  "next_tables": [
-                    {
-                      "next_table_name": "",
-                      "next_table_logical_id": 6,
-                      "next_table_stage_no": 0
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554442,
-          "name": "tbl_spgw_egress_gtpu_encap$action"
-        }
-      ],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "FabricEgress.spgw_egress.gtpu_encap",
-          "handle": 536870984,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu_ipv4.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.version" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "immediate", "name": "4" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ihl" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "immediate", "name": "5" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.total_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" },
-              "src2": { "type": "immediate", "name": "36" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.identification" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "immediate", "name": "0x1513" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ttl" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "64" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.protocol" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "17" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu_udp.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.sport" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "immediate", "name": "2152" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.dport" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "immediate", "name": "2152" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.spgw.ipv4_len" },
-              "src2": { "type": "immediate", "name": "16" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.version" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "immediate", "name": "0x1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.pt" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0x1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.spare" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.ex_flag" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.seq_flag" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.npdu_flag" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.msgtype" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "0xff" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.msglen" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.spgw.ipv4_len" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.teid" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "fabric_metadata.spgw.teid" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870984,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_spgw_egress_gtpu_encap",
-      "handle": 1879048195,
-      "name": "cond-29",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 6, "true": 5 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "", "true": "tbl_spgw_egress_gtpu_encap" },
-          "logical_table_id": 5,
-          "stage_number": 0,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "fabric_metadata.spgw.outer_header_creation",
-          "start_bit": 2,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(fabric_metadata.spgw.outer_header_creation == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 33554442,
-      "name": "tbl_spgw_egress_gtpu_encap$action",
-      "table_type": "action",
-      "size": 1024,
-      "stage_tables": [
-        {
-          "stage_number": 0,
-          "size": 1024,
-          "stage_table_type": "action_data",
-          "logical_table_id": 5,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 36, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 74,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 72,
-                      "field_name": "$constant6"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "$constant7"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 104,
-                      "field_name": "$constant8"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 106,
-                      "field_name": "$constant9"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 2152, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 2152, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 7,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 65,
-                      "field_name": "--padding_65_71--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 73,
-                      "field_name": "--padding_73_73--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 21,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "--padding_75_95--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 7,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 97,
-                      "field_name": "--padding_97_103--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 105,
-                      "field_name": "--padding_105_105--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 21,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "--padding_107_127--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870984
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricEgress.spgw_egress.gtpu_encap",
-          "handle": 536870984,
-          "p4_parameters": []
-        }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "egress",
-      "attached_to": "-",
-      "handle": 1879048196,
-      "name": "cond-30",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 85, "true": 7 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "tbl_egress_next_set_mpls",
-            "true": "FabricEgress.process_int_main.process_int_source.tb_int_source"
-          },
-          "logical_table_id": 6,
-          "stage_number": 0,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        { "name": "ig_intr_md.ingress_port", "start_bit": 0, "bit_width": 8 },
-        { "name": "ig_intr_md.ingress_port", "start_bit": 8, "bit_width": 1 },
-        { "name": "eg_intr_md.egress_port", "start_bit": 16, "bit_width": 8 },
-        { "name": "eg_intr_md.egress_port", "start_bit": 24, "bit_width": 1 },
-        { "name": "hdr.udp.$valid", "start_bit": 32, "bit_width": 1 },
-        { "name": "hdr.tcp.$valid", "start_bit": 33, "bit_width": 1 }
-      ],
-      "condition": "(ig_intr_md.ingress_port != 320 && eg_intr_md.egress_port != 320 && (hdr.udp.$valid == 1 || hdr.tcp.$valid == 1))",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777256,
-      "name": "FabricEgress.process_int_main.process_int_source.tb_int_source",
-      "table_type": "match",
-      "size": 512,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 0,
-            "size": 512,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 7,
-            "has_attached_gateway": true,
-            "default_next_table": 21,
-            "pack_format": [
-              {
-                "table_word_width": 141,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 3,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--version--",
-                        "lsb_mem_word_offset": 43,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "version",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_payload_1--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_1--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_payload_2--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_2--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "l4_dport",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "l4_sport",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "l4_sport",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 41,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 41,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 12,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 34
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": {
-              "memory_type": "tcam",
-              "memory_units_and_vpns": [ { "memory_units": [ 0, 1, 2 ], "vpns": [ 0 ] } ],
-              "spare_bank_memory_unit": 2
-            },
-            "result_physical_buses": [ 0 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 0,
-              "stage_table_type": "ternary_indirection",
-              "size": 32768,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": {
-                "memory_type": "sram",
-                "memory_units_and_vpns": [ { "memory_units": [ 2 ], "vpns": [ 0 ] } ],
-                "spare_bank_memory_unit": 2
-              },
-              "action_format": [
-                {
-                  "action_name": "nop",
-                  "action_handle": 536870986,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 4294967295,
-                  "next_table_full": 21,
-                  "vliw_instruction": -1,
-                  "vliw_instruction_full": 64,
-                  "next_tables": [
-                    {
-                      "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
-                      "next_table_logical_id": 5,
-                      "next_table_stage_no": 1
-                    }
-                  ],
-                  "immediate_fields": []
-                },
-                {
-                  "action_name": "FabricEgress.process_int_main.process_int_source.int_source_dscp",
-                  "action_handle": 536870985,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 21,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 68,
-                  "next_tables": [
-                    {
-                      "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
-                      "next_table_logical_id": 5,
-                      "next_table_stage_no": 1
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554443,
-          "name": "FabricEgress.process_int_main.process_int_source.tb_int_source$action"
-        }
-      ],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 67108876,
-          "name": "FabricEgress.process_int_main.process_int_source.counter_int_source"
-        }
-      ],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "nop",
-          "handle": 536870986,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_source.int_source_dscp",
-          "handle": 536870985,
-          "primitives": [
-            {
-              "name": "CountPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricEgress.process_int_main.process_int_source.counter_int_source"
-              }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.intl4_shim.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.intl4_shim.int_type" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.intl4_shim.len_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "4" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_header.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.ver" },
-              "dst_mask": { "type": "immediate", "name": "3" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.rep" },
-              "dst_mask": { "type": "immediate", "name": "3" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.c" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.e" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.rsvd1" },
-              "dst_mask": { "type": "immediate", "name": "31" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.ins_cnt" },
-              "dst_mask": { "type": "immediate", "name": "31" },
-              "src1": { "type": "action_param", "name": "ins_cnt" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.max_hop_cnt" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "action_param", "name": "max_hop" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.total_hop_cnt" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_0003" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "action_param", "name": "ins_mask0003" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_0407" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "action_param", "name": "ins_mask0407" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_0811" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_1215" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.intl4_tail.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.intl4_tail.next_proto" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.protocol" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.intl4_tail.dest_port" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.l4_dport" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.intl4_tail.dscp" },
-              "dst_mask": { "type": "immediate", "name": "63" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.dscp" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" },
-              "src2": { "type": "immediate", "name": "16" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.udp.len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.udp.len" },
-              "src2": { "type": "immediate", "name": "16" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
-              "dst_mask": { "type": "immediate", "name": "63" },
-              "src1": { "type": "immediate", "name": "0x1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "disallowed_as_default_action_reason": "",
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [
-            { "name": "max_hop", "start_bit": 0, "position": 0, "bit_width": 8 },
-            { "name": "ins_cnt", "start_bit": 8, "position": 1, "bit_width": 5 },
-            {
-              "name": "ins_mask0003",
-              "start_bit": 13,
-              "position": 2,
-              "bit_width": 4
-            },
-            {
-              "name": "ins_mask0407",
-              "start_bit": 17,
-              "position": 3,
-              "bit_width": 4
-            }
-          ],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870986,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "ipv4_src",
-          "global_name": "hdr.ipv4.src_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 0,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "hdr.ipv4",
-          "field_name": "src_addr"
-        },
-        {
-          "name": "ipv4_dst",
-          "global_name": "hdr.ipv4.dst_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 1,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "hdr.ipv4",
-          "field_name": "dst_addr"
-        },
-        {
-          "name": "l4_sport",
-          "global_name": "fabric_metadata.l4_sport",
-          "start_bit": 0,
-          "bit_width": 16,
-          "bit_width_full": 16,
-          "position": 2,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "fabric_metadata",
-          "field_name": "l4_sport"
-        },
-        {
-          "name": "l4_dport",
-          "global_name": "fabric_metadata.l4_dport",
-          "start_bit": 0,
-          "bit_width": 16,
-          "bit_width_full": 16,
-          "position": 3,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "fabric_metadata",
-          "field_name": "l4_dport"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "FabricEgress.process_int_main.process_int_source.tb_int_source",
-      "handle": 1879048197,
-      "name": "cond-31",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 21, "true": 7 },
-          "memory_resource_allocation": { "memory_unit": 5, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
-            "true": "FabricEgress.process_int_main.process_int_source.tb_int_source"
-          },
-          "logical_table_id": 7,
-          "stage_number": 0,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "fabric_metadata.int_meta.source",
-          "start_bit": 3,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(fabric_metadata.int_meta.source == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 67108876,
-      "name": "FabricEgress.process_int_main.process_int_source.counter_int_source",
-      "table_type": "statistics",
-      "size": 1024,
-      "stage_tables": [
-        {
-          "stage_number": 0,
-          "size": 1024,
-          "stage_table_type": "statistics",
-          "logical_table_id": 7,
-          "pack_format": [
-            {
-              "table_word_width": 128,
-              "memory_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 78 ], "vpns": [ 0 ] } ],
-            "spare_bank_memory_unit": 79
-          },
-          "stats_alu_index": 3
-        }
-      ],
-      "how_referenced": "direct",
-      "enable_pfe": false,
-      "pfe_bit_position": 0,
-      "byte_counter_resolution": 64,
-      "packet_counter_resolution": 64,
-      "statistics_type": "packets_and_bytes"
-    },
-    {
-      "direction": "egress",
-      "handle": 33554443,
-      "name": "FabricEgress.process_int_main.process_int_source.tb_int_source$action",
-      "table_type": "action",
-      "size": 2048,
-      "stage_tables": [
-        {
-          "stage_number": 0,
-          "size": 2048,
-          "stage_table_type": "action_data",
-          "logical_table_id": 7,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "max_hop"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
-                      "lsb_mem_word_offset": 84,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 92,
-                      "field_name": "ins_mask0003"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 88,
-                      "field_name": "ins_mask0407"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "$constant6"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 106,
-                      "field_name": "$constant7"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 5 } ],
-                      "lsb_mem_word_offset": 101,
-                      "field_name": "$constant8"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "ins_cnt"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 72,
-                      "field_name": "--padding_8_15--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "max_hop"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
-                      "lsb_mem_word_offset": 20,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 28,
-                      "field_name": "ins_mask0003"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 24,
-                      "field_name": "ins_mask0407"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 43,
-                      "field_name": "$constant6"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 42,
-                      "field_name": "$constant7"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 5 } ],
-                      "lsb_mem_word_offset": 37,
-                      "field_name": "$constant8"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "ins_cnt"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 8,
-                      "field_name": "--padding_8_15--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870985
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870986
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricEgress.process_int_main.process_int_source.int_source_dscp",
-          "handle": 536870985,
-          "p4_parameters": [
-            { "name": "max_hop", "start_bit": 0, "position": 0, "bit_width": 8 },
-            { "name": "ins_cnt", "start_bit": 8, "position": 1, "bit_width": 5 },
-            {
-              "name": "ins_mask0003",
-              "start_bit": 13,
-              "position": 2,
-              "bit_width": 4
-            },
-            {
-              "name": "ins_mask0407",
-              "start_bit": 17,
-              "position": 3,
-              "bit_width": 4
-            }
-          ]
-        },
-        { "name": "nop", "handle": 536870986, "p4_parameters": [] }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777219,
-      "name": "tbl_act_1",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 1,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 0,
-            "has_attached_gateway": true,
-            "default_next_table": 17,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 4 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 1,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_3",
-                  "action_handle": 536870915,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 17,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_3",
-                      "next_table_logical_id": 1,
-                      "next_table_stage_no": 1
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_3",
-          "handle": 536870915,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.$valid" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.version" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.version" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ihl" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.ihl" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.dscp" },
-              "dst_mask": { "type": "immediate", "name": "63" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.dscp" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ecn" },
-              "dst_mask": { "type": "immediate", "name": "3" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.ecn" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.total_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.identification" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.identification" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.flags" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.flags" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.frag_offset" },
-              "dst_mask": { "type": "immediate", "name": "8191" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.frag_offset" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ttl" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.ttl" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.protocol" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.protocol" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.hdr_checksum" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.src_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.src_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.dst_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.dst_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
-              "dst_mask": { "type": "immediate", "name": "63" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
-              "dst_mask": { "type": "immediate", "name": "3" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
-              "dst_mask": { "type": "immediate", "name": "8191" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.$valid" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "phv", "name": "hdr.udp.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.sport" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.udp.sport" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.dport" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.udp.dport" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.udp.len" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.checksum" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.udp.checksum" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870915,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_1",
-      "handle": 1879048198,
-      "name": "cond-2",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 19, "true": 16 },
-          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_4", "true": "tbl_act_1" },
-          "logical_table_id": 0,
-          "stage_number": 1,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "spgw_normalizer_hasReturned",
-          "start_bit": 0,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(!spgw_normalizer_hasReturned)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777220,
-      "name": "tbl_act_3",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 1,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 1,
-            "has_attached_gateway": true,
-            "default_next_table": 19,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 3 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 1,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_2",
-                  "action_handle": 536870917,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 19,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_4",
-                      "next_table_logical_id": 3,
-                      "next_table_stage_no": 1
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_2",
-          "handle": 536870917,
-          "primitives": [
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.udp.$valid" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870917,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_3",
-      "handle": 1879048199,
-      "name": "cond-3",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 17, "true": 18 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_3", "true": "tbl_act_2" },
-          "logical_table_id": 1,
-          "stage_number": 1,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.inner_udp.$valid", "start_bit": 1, "bit_width": 1 } ],
-      "condition": "(hdr.inner_udp.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777221,
-      "name": "tbl_act_2",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 1,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 2,
-            "has_attached_gateway": false,
-            "default_next_table": 19,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 2 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 1,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_1",
-                  "action_handle": 536870916,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 19,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 68,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_4",
-                      "next_table_logical_id": 3,
-                      "next_table_stage_no": 1
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_1",
-          "handle": 536870916,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.udp.$valid" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "phv", "name": "hdr.inner_udp.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.udp.sport" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_udp.sport" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.udp.dport" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_udp.dport" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.udp.len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_udp.len" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.udp.checksum" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_udp.checksum" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870916,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777222,
-      "name": "tbl_act_4",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 1,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 3,
-            "has_attached_gateway": true,
-            "default_next_table": 255,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 1 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 1,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_4",
-                  "action_handle": 536870918,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 255,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 67,
-                  "next_tables": [],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_4",
-          "handle": 536870918,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
-              "dst_mask": { "type": "immediate", "name": "511" },
-              "src1": { "type": "phv", "name": "hdr.packet_out.egress_port" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": {
-                "type": "phv",
-                "name": "fabric_metadata.is_controller_packet_out"
-              },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870918,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_4",
-      "handle": 1879048200,
-      "name": "cond-4",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 20, "true": 19 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_9", "true": "tbl_act_4" },
-          "logical_table_id": 3,
-          "stage_number": 1,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.packet_out.$valid", "start_bit": 1, "bit_width": 1 } ],
-      "condition": "(hdr.packet_out.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777223,
-      "name": "tbl_act_9",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 1,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 4,
-            "has_attached_gateway": true,
-            "default_next_table": 32,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 0 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 1,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_8",
-                  "action_handle": 536870927,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 32,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 69,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_spgw_ingress_gtpu_decap",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_8",
-          "handle": 536870927,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.direction" },
-              "dst_mask": { "type": "immediate", "name": "3" },
-              "src1": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870927,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_9",
-      "handle": 1879048201,
-      "name": "cond-7",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 33, "true": 20 },
-          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "FabricIngress.spgw_ingress.downlink_filter_table",
-            "true": "tbl_act_9"
-          },
-          "logical_table_id": 4,
-          "stage_number": 1,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.gtpu.$valid", "start_bit": 3, "bit_width": 1 } ],
-      "condition": "(hdr.gtpu.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777257,
-      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
-      "table_type": "match",
-      "size": 1,
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "default_action_handle": 536870988,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "int_is_valid",
-          "global_name": "hdr.int_header.$valid",
-          "start_bit": 0,
-          "bit_width": 1,
-          "bit_width_full": 1,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": true,
-          "instance_name": "hdr.int_header",
-          "field_name": "$valid"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 1,
-            "size": 1024,
-            "stage_table_type": "hash_match",
-            "logical_table_id": 5,
-            "has_attached_gateway": true,
-            "default_next_table": 255,
-            "hash_functions": [
-              {
-                "hash_bits": [
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "int_is_valid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 0
-                  }
-                ],
-                "hash_function_number": 0,
-                "ghost_bit_to_hash_bit": [ [ 0 ] ],
-                "ghost_bit_info": [ { "field_name": "int_is_valid", "bit_in_match_spec": 0 } ]
-              }
-            ],
-            "action_format": [
-              {
-                "action_name": "nop",
-                "action_handle": 536870988,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 4294967295,
-                "next_table_full": 42,
-                "vliw_instruction": -1,
-                "vliw_instruction_full": 64,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_27",
-                    "next_table_logical_id": 10,
-                    "next_table_stage_no": 2
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.init_metadata",
-                "action_handle": 536870987,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 42,
-                "vliw_instruction": 1,
-                "vliw_instruction_full": 65,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_27",
-                    "next_table_logical_id": 10,
-                    "next_table_stage_no": 2
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "switch_id",
-                    "param_type": "parameter",
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 32
-                  }
-                ]
-              }
-            ],
-            "result_physical_buses": [ 14 ],
-            "pack_format": [
-              {
-                "memory_word_width": 128,
-                "table_word_width": 128,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1
-              }
-            ],
-            "memory_resource_allocation": null,
-            "stash_allocation": {
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 32,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "immediate",
-                          "match_mode": "unused"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action",
-                          "match_mode": "unused"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "num_stash_entries": 2,
-              "stash_entries": [
-                [
-                  {
-                    "stash_entry_id": 28,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ],
-                [
-                  {
-                    "stash_entry_id": 29,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ]
-              ]
-            },
-            "ways": [
-              {
-                "stage_number": 1,
-                "way_number": 0,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 79,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 33,
-                            "field_name": "--padding_33_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 0,
-                  "hash_entry_bit_hi": 9,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
-                }
-              }
-            ]
-          }
-        ],
-        "match_type": "exact",
-        "uses_dynamic_key_masks": false
-      },
-      "actions": [
-        {
-          "name": "nop",
-          "handle": 536870988,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.init_metadata",
-          "handle": 536870987,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.transit" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_switch_id.switch_id" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "switch_id" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_port_ids.ingress_port_id" },
-              "dst_mask": { "type": "immediate", "name": "127" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_port_ids.ingress_port_id" },
-              "dst_mask": { "type": "immediate", "name": "511" },
-              "src1": { "type": "phv", "name": "ig_intr_md.ingress_port" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_port_ids.egress_port_id" },
-              "dst_mask": { "type": "immediate", "name": "127" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_port_ids.egress_port_id" },
-              "dst_mask": { "type": "immediate", "name": "511" },
-              "src1": { "type": "phv", "name": "eg_intr_md.egress_port" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_ingress_tstamp.ingress_tstamp" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.ig_tstamp" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_egress_tstamp.egress_tstamp" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.eg_tstamp" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "sub",
-              "dst": { "type": "phv", "name": "hdr.int_hop_latency.hop_latency" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "eg_intr_md_from_prsr.global_tstamp" },
-              "src2": { "type": "phv", "name": "ig_intr_md_from_prsr.global_tstamp" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_q_occupancy.q_occupancy" },
-              "dst_mask": { "type": "immediate", "name": "31" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_q_occupancy.q_occupancy" },
-              "dst_mask": { "type": "immediate", "name": "524287" },
-              "src1": { "type": "phv", "name": "eg_intr_md.deq_qdepth" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": false,
-          "disallowed_as_default_action_reason": "has_const_default",
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [
-            {
-              "name": "switch_id",
-              "start_bit": 0,
-              "position": 0,
-              "bit_width": 32
-            }
-          ],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
-      "handle": 1879048202,
-      "name": "cond-32",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 85, "true": 21 },
-          "memory_resource_allocation": { "memory_unit": 3, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "tbl_egress_next_set_mpls",
-            "true": "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
-          },
-          "logical_table_id": 5,
-          "stage_number": 1,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.int_header.$valid", "start_bit": 4, "bit_width": 1 } ],
-      "condition": "(hdr.int_header.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777227,
-      "name": "tbl_spgw_ingress_gtpu_decap",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 0,
-            "has_attached_gateway": false,
-            "default_next_table": 36,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 8 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 4,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 30,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 127,
-                          "field_name": "--padding_31_31--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 30,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 95,
-                          "field_name": "--padding_31_31--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 30,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 63,
-                          "field_name": "--padding_31_31--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 30,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 31,
-                          "field_name": "--padding_31_31--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "FabricIngress.spgw_ingress.gtpu_decap",
-                  "action_handle": 536870928,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 36,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "FabricIngress.spgw_ingress.uplink_filter_table",
-                      "next_table_logical_id": 4,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": [
-                    {
-                      "param_name": "constant_0",
-                      "param_type": "constant",
-                      "const_value": 0,
-                      "param_shift": 0,
-                      "dest_start": 13,
-                      "dest_width": 1
-                    },
-                    {
-                      "param_name": "constant_0",
-                      "param_type": "constant",
-                      "const_value": 0,
-                      "param_shift": 0,
-                      "dest_start": 11,
-                      "dest_width": 1
-                    },
-                    {
-                      "param_name": "constant_1",
-                      "param_type": "constant",
-                      "const_value": 1,
-                      "param_shift": 0,
-                      "dest_start": 27,
-                      "dest_width": 1
-                    },
-                    {
-                      "param_name": "constant_1",
-                      "param_type": "constant",
-                      "const_value": 1,
-                      "param_shift": 0,
-                      "dest_start": 29,
-                      "dest_width": 1
-                    }
-                  ]
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "FabricIngress.spgw_ingress.gtpu_decap",
-          "handle": 536870928,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.teid" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.gtpu.teid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_dst_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.gtpu_ipv4.dst_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.src_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.dst_addr" }
-            },
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu_ipv4.$valid" }
-            },
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu_udp.$valid" }
-            },
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870928,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777224,
-      "name": "FabricIngress.spgw_ingress.downlink_filter_table",
-      "table_type": "match",
-      "size": 512,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 512,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 1,
-            "has_attached_gateway": false,
-            "default_next_table": 34,
-            "pack_format": [
-              {
-                "table_word_width": 47,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--version--",
-                        "lsb_mem_word_offset": 43,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "version",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "ipv4_prefix",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 32
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 10
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": {
-              "memory_type": "tcam",
-              "memory_units_and_vpns": [ { "memory_units": [ 3 ], "vpns": [ 0 ] } ],
-              "spare_bank_memory_unit": 3
-            },
-            "result_physical_buses": [ 1 ],
-            "ternary_indirection_stage_table": {
-              "action_format": [
-                {
-                  "action_name": "nop",
-                  "action_handle": 536870929,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 35,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 64,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_10",
-                      "next_table_logical_id": 2,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ],
-              "memory_resource_allocation": null,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "entries": [ { "entry_number": 0, "fields": [] } ],
-                  "table_word_width": 0,
-                  "number_memory_units_per_table_word": 0
-                }
-              ],
-              "logical_table_id": 1,
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "default_action_handle": 536870929,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "ipv4_prefix",
-          "global_name": "hdr.ipv4.dst_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 0,
-          "match_type": "lpm",
-          "is_valid": false,
-          "instance_name": "hdr.ipv4",
-          "field_name": "dst_addr"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "actions": [
-        {
-          "name": "nop",
-          "handle": 536870929,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777225,
-      "name": "tbl_act_10",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 2,
-            "has_attached_gateway": false,
-            "default_next_table": 38,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 7 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_9",
-                  "action_handle": 536870930,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 38,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 66,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_5",
-                      "next_table_logical_id": 6,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_9",
-          "handle": 536870930,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.direction" },
-              "dst_mask": { "type": "immediate", "name": "3" },
-              "src1": { "type": "immediate", "name": "2" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870930,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777226,
-      "name": "tbl_act_11",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 3,
-            "has_attached_gateway": false,
-            "default_next_table": 38,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 6 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_10",
-                  "action_handle": 536870931,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 38,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 67,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_5",
-                      "next_table_logical_id": 6,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_10",
-          "handle": 536870931,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "spgw_ingress_hasReturned" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870931,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777228,
-      "name": "FabricIngress.spgw_ingress.uplink_filter_table",
-      "table_type": "match",
-      "size": 9216,
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "default_action_handle": 536870925,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "gtp_ipv4_dst",
-          "global_name": "hdr.gtpu_ipv4.dst_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "hdr.gtpu_ipv4",
-          "field_name": "dst_addr"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 9216,
-            "stage_table_type": "hash_match",
-            "logical_table_id": 4,
-            "has_attached_gateway": false,
-            "default_next_table": 255,
-            "hash_functions": [
-              {
-                "hash_bits": [
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 5,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 8,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 11,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 12,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      }
-                    ],
-                    "hash_bit": 15,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 16,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 20,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 21,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 22,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      }
-                    ],
-                    "hash_bit": 23,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 25,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 0
-                  }
-                ],
-                "hash_function_number": 0,
-                "ghost_bit_to_hash_bit": [
-                  [ 0, 11, 22 ],
-                  [ 1, 12, 23 ],
-                  [ 2, 13, 24 ],
-                  [ 3, 14, 25 ],
-                  [ 4, 15, 26 ],
-                  [ 5, 16, 27 ],
-                  [ 6, 17, 28 ],
-                  [ 7, 18, 29 ],
-                  [ 8, 19, 20 ],
-                  [ 9, 10, 21 ]
-                ],
-                "ghost_bit_info": [
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 0 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 1 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 2 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 3 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 4 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 5 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 6 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 7 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 8 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 9 }
-                ]
-              }
-            ],
-            "action_format": [
-              {
-                "action_name": "nop",
-                "action_handle": 536870925,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 37,
-                "vliw_instruction": 0,
-                "vliw_instruction_full": 64,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_5",
-                    "next_table_logical_id": 6,
-                    "next_table_stage_no": 2
-                  }
-                ],
-                "immediate_fields": []
-              }
-            ],
-            "result_physical_buses": [ 14 ],
-            "pack_format": [
-              {
-                "memory_word_width": 128,
-                "table_word_width": 128,
-                "entries_per_table_word": 3,
-                "number_memory_units_per_table_word": 1
-              }
-            ],
-            "memory_resource_allocation": null,
-            "stash_allocation": {
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "field_name": "gtp_ipv4_dst",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 50,
-                          "start_bit": 10,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 6
-                        },
-                        {
-                          "field_name": "gtp_ipv4_dst",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 32,
-                          "start_bit": 16,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "gtp_ipv4_dst",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 40,
-                          "start_bit": 24,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "num_stash_entries": 2,
-              "stash_entries": [
-                [
-                  {
-                    "stash_entry_id": 28,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ],
-                [
-                  {
-                    "stash_entry_id": 29,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ]
-              ]
-            },
-            "ways": [
-              {
-                "stage_number": 2,
-                "way_number": 0,
-                "stage_table_type": "hash_way",
-                "size": 3072,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 3,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 2,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 98,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          }
-                        ]
-                      },
-                      {
-                        "entry_number": 1,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 74,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          }
-                        ]
-                      },
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 2,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 0,
-                  "hash_entry_bit_hi": 9,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0, 1, 2 ] } ]
-                }
-              },
-              {
-                "stage_number": 2,
-                "way_number": 1,
-                "stage_table_type": "hash_way",
-                "size": 3072,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 3,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 2,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 98,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          }
-                        ]
-                      },
-                      {
-                        "entry_number": 1,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 74,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          }
-                        ]
-                      },
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 2,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 10,
-                  "hash_entry_bit_hi": 19,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 3, 4, 5 ] } ]
-                }
-              },
-              {
-                "stage_number": 2,
-                "way_number": 2,
-                "stage_table_type": "hash_way",
-                "size": 3072,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 3,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 2,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 98,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          }
-                        ]
-                      },
-                      {
-                        "entry_number": 1,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 74,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          }
-                        ]
-                      },
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 2,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 20,
-                  "hash_entry_bit_hi": 29,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 6, 7, 8 ] } ]
-                }
-              }
-            ]
-          }
-        ],
-        "match_type": "exact",
-        "uses_dynamic_key_masks": false
-      },
-      "actions": [
-        {
-          "name": "nop",
-          "handle": 536870925,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777229,
-      "name": "tbl_act_8",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 5,
-            "has_attached_gateway": false,
-            "default_next_table": 38,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
             "result_physical_buses": [ 5 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 2,
+              "stage_number": 0,
               "stage_table_type": "ternary_indirection",
               "size": 0,
               "pack_format": [
@@ -102629,17 +94339,17 @@
               "action_format": [
                 {
                   "action_name": "act_7",
-                  "action_handle": 536870926,
+                  "action_handle": 536870966,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 38,
+                  "next_table_full": 3,
                   "vliw_instruction": 0,
-                  "vliw_instruction_full": 68,
+                  "vliw_instruction_full": 65,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_5",
-                      "next_table_logical_id": 6,
-                      "next_table_stage_no": 2
+                      "next_table_name": "tbl_act_7",
+                      "next_table_logical_id": 3,
+                      "next_table_stage_no": 0
                     }
                   ],
                   "immediate_fields": []
@@ -102658,12 +94368,14 @@
       "actions": [
         {
           "name": "act_7",
-          "handle": 536870926,
+          "handle": 536870966,
           "primitives": [
             {
-              "name": "DropPrimitive",
-              "dst": { "type": "phv", "name": "ig_intr_md_for_dprsr.drop_ctl" },
-              "src1": { "type": "immediate", "name": "1" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.eg_tstamp" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "eg_intr_md_from_prsr.global_tstamp" }
             }
           ],
           "indirect_resources": [],
@@ -102684,7 +94396,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870926,
+      "default_action_handle": 536870966,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -102695,20 +94407,20 @@
       "static_entries": []
     },
     {
-      "direction": "ingress",
-      "handle": 16777230,
-      "name": "tbl_act_5",
+      "direction": "egress",
+      "handle": 16777241,
+      "name": "tbl_act_7",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 2,
+            "stage_number": 0,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 6,
+            "logical_table_id": 3,
             "has_attached_gateway": true,
-            "default_next_table": 39,
+            "default_next_table": 255,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -102745,2826 +94457,7 @@
             "memory_resource_allocation": null,
             "result_physical_buses": [ 4 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_5",
-                  "action_handle": 536870919,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 39,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 69,
-                  "next_tables": [
-                    {
-                      "next_table_name": "FabricIngress.filtering.fwd_classifier",
-                      "next_table_logical_id": 7,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_5",
-          "handle": 536870919,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.vlan_id" },
-              "dst_mask": { "type": "immediate", "name": "4095" },
-              "src1": { "type": "phv", "name": "hdr.vlan_tag.vlan_id" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.vlan_pri" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "phv", "name": "hdr.vlan_tag.pri" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.vlan_cfi" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "phv", "name": "hdr.vlan_tag.cfi" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870919,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_5",
-      "handle": 1879048203,
-      "name": "cond-5",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 39, "true": 38 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "FabricIngress.filtering.fwd_classifier",
-            "true": "tbl_act_5"
-          },
-          "logical_table_id": 6,
-          "stage_number": 2,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.vlan_tag.$valid", "start_bit": 3, "bit_width": 1 } ],
-      "condition": "(hdr.vlan_tag.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777231,
-      "name": "FabricIngress.filtering.fwd_classifier",
-      "table_type": "match",
-      "size": 128,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 512,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 7,
-            "has_attached_gateway": false,
-            "default_next_table": 40,
-            "pack_format": [
-              {
-                "table_word_width": 141,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 3,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--version--",
-                        "lsb_mem_word_offset": 43,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "version",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_payload_1--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_1--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_payload_2--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_2--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 32,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ig_port",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "ig_port",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ip_eth_type",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ip_eth_type",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_type",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_type",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 41,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 24,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 41,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 28,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 26
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 26,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 7
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": {
-              "memory_type": "tcam",
-              "memory_units_and_vpns": [ { "memory_units": [ 0, 1, 2 ], "vpns": [ 0 ] } ],
-              "spare_bank_memory_unit": 2
-            },
-            "result_physical_buses": [ 0 ],
-            "ternary_indirection_stage_table": {
-              "action_format": [
-                {
-                  "action_name": "FabricIngress.filtering.set_forwarding_type",
-                  "action_handle": 536870924,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 40,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 70,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_16",
-                      "next_table_logical_id": 8,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ],
-              "memory_resource_allocation": null,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "entries": [ { "entry_number": 0, "fields": [] } ],
-                  "table_word_width": 0,
-                  "number_memory_units_per_table_word": 0
-                }
-              ],
-              "logical_table_id": 7,
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554433,
-          "name": "FabricIngress.filtering.fwd_classifier$action"
-        }
-      ],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 67108865,
-          "name": "FabricIngress.filtering.fwd_classifier_counter"
-        }
-      ],
-      "stateful_table_refs": [],
-      "default_action_handle": 536870924,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "ig_port",
-          "global_name": "ig_intr_md.ingress_port",
-          "start_bit": 0,
-          "bit_width": 9,
-          "bit_width_full": 9,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "ig_intr_md",
-          "field_name": "ingress_port"
-        },
-        {
-          "name": "eth_dst",
-          "global_name": "hdr.ethernet.dst_addr",
-          "start_bit": 0,
-          "bit_width": 48,
-          "bit_width_full": 48,
-          "position": 1,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "hdr.ethernet",
-          "field_name": "dst_addr"
-        },
-        {
-          "name": "eth_type",
-          "global_name": "hdr.eth_type.value",
-          "start_bit": 0,
-          "bit_width": 16,
-          "bit_width_full": 16,
-          "position": 2,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "hdr.eth_type",
-          "field_name": "value"
-        },
-        {
-          "name": "ip_eth_type",
-          "global_name": "fabric_metadata.ip_eth_type",
-          "start_bit": 0,
-          "bit_width": 16,
-          "bit_width_full": 16,
-          "position": 3,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "fabric_metadata",
-          "field_name": "ip_eth_type"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "actions": [
-        {
-          "name": "FabricIngress.filtering.set_forwarding_type",
-          "handle": 536870924,
-          "primitives": [
-            {
-              "name": "CountPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricIngress.filtering.fwd_classifier_counter"
-              }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.fwd_type" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "action_param", "name": "fwd_type" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_src_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ipv4_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.next_id" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "compiler_generated_meta.mirror_id" },
-              "dst_mask": { "type": "immediate", "name": "1023" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "compiler_generated_meta.mirror_source" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "0" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [
-            {
-              "name": "fwd_type",
-              "start_bit": 0,
-              "position": 0,
-              "default_value": "0x0",
-              "bit_width": 3
-            }
-          ],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 67108865,
-      "name": "FabricIngress.filtering.fwd_classifier_counter",
-      "table_type": "statistics",
-      "size": 1024,
-      "stage_tables": [
-        {
-          "stage_number": 2,
-          "size": 1024,
-          "stage_table_type": "statistics",
-          "logical_table_id": 7,
-          "pack_format": [
-            {
-              "table_word_width": 128,
-              "memory_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 78 ], "vpns": [ 0 ] } ],
-            "spare_bank_memory_unit": 79
-          },
-          "stats_alu_index": 3
-        }
-      ],
-      "how_referenced": "direct",
-      "enable_pfe": false,
-      "pfe_bit_position": 0,
-      "byte_counter_resolution": 64,
-      "packet_counter_resolution": 64,
-      "statistics_type": "packets_and_bytes"
-    },
-    {
-      "direction": "ingress",
-      "handle": 33554433,
-      "name": "FabricIngress.filtering.fwd_classifier$action",
-      "table_type": "action",
-      "size": 16384,
-      "stage_tables": [
-        {
-          "stage_number": 2,
-          "size": 16384,
-          "stage_table_type": "action_data",
-          "logical_table_id": 7,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 16,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 15,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 120,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 123,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 14,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 13,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 104,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 12,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 99,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 11,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 88,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 91,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 10,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 9,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 72,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 8,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 7,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 56,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 59,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 6,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 5,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 40,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 43,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 4,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 35,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 3,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 24,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 27,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 2,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 8,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870924
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricIngress.filtering.set_forwarding_type",
-          "handle": 536870924,
-          "p4_parameters": [
-            {
-              "name": "fwd_type",
-              "start_bit": 0,
-              "position": 0,
-              "bit_width": 3
-            }
-          ]
-        }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777232,
-      "name": "tbl_act_16",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 8,
-            "has_attached_gateway": false,
-            "default_next_table": 41,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 3 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_16",
-                  "action_handle": 536870969,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 41,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 71,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_6",
-                      "next_table_logical_id": 9,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_16",
-          "handle": 536870969,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "ig_intr_md_from_prsr.global_tstamp" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "ig_intr_md_from_prsr.global_tstamp" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870969,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777233,
-      "name": "tbl_act_6",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 9,
-            "has_attached_gateway": true,
-            "default_next_table": 48,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 2 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 2,
+              "stage_number": 0,
               "stage_table_type": "ternary_indirection",
               "size": 0,
               "pack_format": [
@@ -106381,19 +95274,13 @@
               "action_format": [
                 {
                   "action_name": "act_6",
-                  "action_handle": 536870920,
+                  "action_handle": 536870967,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 48,
+                  "next_table_full": 255,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 72,
-                  "next_tables": [
-                    {
-                      "next_table_name": "",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 3
-                    }
-                  ],
+                  "vliw_instruction_full": 64,
+                  "next_tables": [],
                   "immediate_fields": []
                 }
               ]
@@ -106410,16 +95297,8 @@
       "actions": [
         {
           "name": "act_6",
-          "handle": 536870920,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.mpls_ttl" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "65" }
-            }
-          ],
+          "handle": 536870967,
+          "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
           "is_compiler_added_action": false,
@@ -106438,7 +95317,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870920,
+      "default_action_handle": 536870967,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -106449,42 +95328,48 @@
       "static_entries": []
     },
     {
-      "direction": "ingress",
-      "attached_to": "tbl_act_6",
-      "handle": 1879048204,
-      "name": "cond-6",
+      "direction": "egress",
+      "attached_to": "tbl_act_7",
+      "handle": 1879048193,
+      "name": "cond-13",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 48, "true": 41 },
-          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 4, "true": 3 },
+          "memory_resource_allocation": { "memory_unit": 4, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "", "true": "tbl_act_6" },
-          "logical_table_id": 9,
-          "stage_number": 2,
+          "next_table_names": { "false": "tbl_act_8", "true": "tbl_act_7" },
+          "logical_table_id": 3,
+          "stage_number": 0,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.mpls.$valid", "start_bit": 6, "bit_width": 1 } ],
-      "condition": "(!(hdr.mpls.$valid == 1))",
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.is_controller_packet_out",
+          "start_bit": 0,
+          "bit_width": 1
+        }
+      ],
+      "condition": "(fabric_metadata.is_controller_packet_out == 1)",
       "size": 0
     },
     {
       "direction": "egress",
-      "handle": 16777258,
-      "name": "tbl_act_27",
+      "handle": 16777242,
+      "name": "tbl_act_8",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 2,
+            "stage_number": 0,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 10,
+            "logical_table_id": 4,
             "has_attached_gateway": true,
-            "default_next_table": 53,
+            "default_next_table": 255,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -106519,9 +95404,9 @@
               }
             ],
             "memory_resource_allocation": null,
-            "result_physical_buses": [ 9 ],
+            "result_physical_buses": [ 3 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 2,
+              "stage_number": 0,
               "stage_table_type": "ternary_indirection",
               "size": 0,
               "pack_format": [
@@ -107337,20 +96222,14 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_27",
-                  "action_handle": 536870989,
+                  "action_name": "act_8",
+                  "action_handle": 536870968,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 53,
+                  "next_table_full": 255,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_28",
-                      "next_table_logical_id": 5,
-                      "next_table_stage_no": 3
-                    }
-                  ],
+                  "vliw_instruction_full": 66,
+                  "next_tables": [],
                   "immediate_fields": []
                 }
               ]
@@ -107366,18 +96245,19 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_27",
-          "handle": 536870989,
+          "name": "act_8",
+          "handle": 536870968,
           "primitives": [
             {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.packet_in.$valid" }
+            },
+            {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": {
-                "type": "phv",
-                "name": "process_int_main_process_int_transit_hasReturned"
-              },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
+              "dst": { "type": "phv", "name": "hdr.packet_in.ingress_port" },
+              "dst_mask": { "type": "immediate", "name": "511" },
+              "src1": { "type": "phv", "name": "ig_intr_md.ingress_port" }
             }
           ],
           "indirect_resources": [],
@@ -107398,7 +96278,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870989,
+      "default_action_handle": 536870968,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -107410,12275 +96290,72 @@
     },
     {
       "direction": "egress",
-      "attached_to": "tbl_act_27",
-      "handle": 1879048205,
-      "name": "cond-33",
+      "attached_to": "tbl_act_8",
+      "handle": 1879048194,
+      "name": "cond-14",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 53, "true": 42 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 5, "true": 4 },
+          "memory_resource_allocation": { "memory_unit": 3, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "tbl_act_28", "true": "tbl_act_27" },
-          "logical_table_id": 10,
-          "stage_number": 2,
+          "next_table_names": { "false": "", "true": "tbl_act_8" },
+          "logical_table_id": 4,
+          "stage_number": 0,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        { "name": "eg_intr_md.egress_port", "start_bit": 0, "bit_width": 8 },
+        { "name": "eg_intr_md.egress_port", "start_bit": 8, "bit_width": 1 }
+      ],
+      "condition": "(eg_intr_md.egress_port == 320)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "attached_to": "-",
+      "handle": 1879048195,
+      "name": "cond-22",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 8, "true": 6 },
+          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "", "true": "tbl_spgw_gtpu_encap" },
+          "logical_table_id": 5,
+          "stage_number": 0,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
       "condition_fields": [
         {
-          "name": "fabric_metadata.int_meta.transit",
-          "start_bit": 6,
+          "name": "fabric_metadata.spgw.skip_spgw",
+          "start_bit": 0,
           "bit_width": 1
         }
       ],
-      "condition": "(fabric_metadata.int_meta.transit == 0)",
+      "condition": "(fabric_metadata.spgw.skip_spgw == 0)",
       "size": 0
     },
     {
-      "direction": "ingress",
-      "attached_to": "-",
-      "handle": 1879048206,
-      "name": "cond-8",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 52, "true": 49 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "FabricIngress.filtering.ingress_port_vlan",
-            "true": "FabricIngress.spgw_ingress.uplink_pdr_lookup"
-          },
-          "logical_table_id": 0,
-          "stage_number": 3,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "spgw_ingress_hasReturned", "start_bit": 1, "bit_width": 1 } ],
-      "condition": "(!spgw_ingress_hasReturned)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777234,
-      "name": "FabricIngress.spgw_ingress.uplink_pdr_lookup",
-      "table_type": "match",
-      "size": 4096,
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554434,
-          "name": "FabricIngress.spgw_ingress.uplink_pdr_lookup$action"
-        }
-      ],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "default_action_handle": 536870933,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "tunnel_ipv4_dst",
-          "global_name": "fabric_metadata.spgw.tunnel_dst_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "fabric_metadata.spgw",
-          "field_name": "tunnel_dst_addr"
-        },
-        {
-          "name": "teid",
-          "global_name": "fabric_metadata.spgw.teid",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 1,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "fabric_metadata.spgw",
-          "field_name": "teid"
-        },
-        {
-          "name": "ue_addr",
-          "global_name": "hdr.ipv4.src_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 2,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "hdr.ipv4",
-          "field_name": "src_addr"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 3,
-            "size": 4096,
-            "stage_table_type": "hash_match",
-            "logical_table_id": 1,
-            "has_attached_gateway": true,
-            "default_next_table": 255,
-            "hash_functions": [
-              {
-                "hash_bits": [
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 5,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 8,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 11,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 12,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 15,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 16,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 20,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 21,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 22,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 23,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 25,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 30,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 31,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 34,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 35,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 36,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 37,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 38,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 39,
-                    "seed": 1
-                  }
-                ],
-                "hash_function_number": 0,
-                "ghost_bit_to_hash_bit": [
-                  [ 2, 13, 24, 35 ],
-                  [ 3, 14, 25, 36 ],
-                  [ 4, 15, 26, 37 ],
-                  [ 5, 16, 27, 38 ],
-                  [ 6, 17, 28, 39 ],
-                  [ 7, 18, 29, 30 ],
-                  [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ],
-                  [ 0, 11, 22, 33 ],
-                  [ 1, 12, 23, 34 ]
-                ],
-                "ghost_bit_info": [
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 0 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 1 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 2 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 3 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 4 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 5 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 6 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 7 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 8 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 9 }
-                ]
-              }
-            ],
-            "action_format": [
-              {
-                "action_name": "NoAction",
-                "action_handle": 536870933,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 4294967295,
-                "next_table_full": 52,
-                "vliw_instruction": -1,
-                "vliw_instruction_full": 64,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricIngress.filtering.ingress_port_vlan",
-                    "next_table_logical_id": 4,
-                    "next_table_stage_no": 3
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-                "action_handle": 536870932,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 52,
-                "vliw_instruction": 1,
-                "vliw_instruction_full": 65,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricIngress.filtering.ingress_port_vlan",
-                    "next_table_logical_id": 4,
-                    "next_table_stage_no": 3
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "ctr_id",
-                    "param_type": "parameter",
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 32
-                  }
-                ]
-              }
-            ],
-            "result_physical_buses": [ 15, 12 ],
-            "pack_format": [
-              {
-                "memory_word_width": 128,
-                "table_word_width": 128,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1
-              }
-            ],
-            "memory_resource_allocation": null,
-            "stash_allocation": {
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 32,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "immediate",
-                          "match_mode": "unused"
-                        },
-                        {
-                          "field_name": "tunnel_ipv4_dst",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 34,
-                          "start_bit": 10,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 6
-                        },
-                        {
-                          "field_name": "tunnel_ipv4_dst",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 40,
-                          "start_bit": 16,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "tunnel_ipv4_dst",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 48,
-                          "start_bit": 24,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "teid",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 56,
-                          "start_bit": 0,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "teid",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 64,
-                          "start_bit": 8,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "teid",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 72,
-                          "start_bit": 16,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "teid",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 80,
-                          "start_bit": 24,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 88,
-                          "start_bit": 0,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 96,
-                          "start_bit": 8,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 104,
-                          "start_bit": 16,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 112,
-                          "start_bit": 24,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action",
-                          "match_mode": "unused"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "num_stash_entries": 2,
-              "stash_entries": [
-                [
-                  {
-                    "stash_entry_id": 30,
-                    "stash_match_data_select": 1,
-                    "stash_hashbank_select": 1,
-                    "hash_function_id": 0
-                  }
-                ],
-                [
-                  {
-                    "stash_entry_id": 31,
-                    "stash_match_data_select": 1,
-                    "stash_hashbank_select": 1,
-                    "hash_function_id": 0
-                  }
-                ]
-              ]
-            },
-            "ways": [
-              {
-                "stage_number": 3,
-                "way_number": 0,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 34,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 48,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 72,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 96,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 104,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 112,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 33,
-                            "field_name": "--padding_33_33--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 124,
-                            "field_name": "--padding_124_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 0,
-                  "hash_entry_bit_hi": 9,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 91 ], "vpns": [ 0 ] } ]
-                }
-              },
-              {
-                "stage_number": 3,
-                "way_number": 1,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 34,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 48,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 72,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 96,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 104,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 112,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 33,
-                            "field_name": "--padding_33_33--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 124,
-                            "field_name": "--padding_124_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 10,
-                  "hash_entry_bit_hi": 19,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 92 ], "vpns": [ 1 ] } ]
-                }
-              },
-              {
-                "stage_number": 3,
-                "way_number": 2,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 34,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 48,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 72,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 96,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 104,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 112,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 33,
-                            "field_name": "--padding_33_33--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 124,
-                            "field_name": "--padding_124_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 20,
-                  "hash_entry_bit_hi": 29,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 74 ], "vpns": [ 2 ] } ]
-                }
-              },
-              {
-                "stage_number": 3,
-                "way_number": 3,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 34,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 48,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 72,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 96,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 104,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 112,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 33,
-                            "field_name": "--padding_33_33--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 124,
-                            "field_name": "--padding_124_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 30,
-                  "hash_entry_bit_hi": 39,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 75 ], "vpns": [ 3 ] } ]
-                }
-              }
-            ]
-          }
-        ],
-        "match_type": "exact",
-        "uses_dynamic_key_masks": false
-      },
-      "actions": [
-        {
-          "name": "NoAction",
-          "handle": 536870933,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-          "handle": 536870932,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.pdr_hit" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ctr_id" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "ctr_id" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_id" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "far_id" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [
-            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
-            {
-              "name": "far_id",
-              "start_bit": 32,
-              "position": 1,
-              "bit_width": 32
-            }
-          ],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "FabricIngress.spgw_ingress.uplink_pdr_lookup",
-      "handle": 1879048207,
-      "name": "cond-9",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 50, "true": 49 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "tbl_act_12",
-            "true": "FabricIngress.spgw_ingress.uplink_pdr_lookup"
-          },
-          "logical_table_id": 1,
-          "stage_number": 3,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "fabric_metadata.spgw.direction",
-          "start_bit": 0,
-          "bit_width": 2
-        }
-      ],
-      "condition": "(fabric_metadata.spgw.direction == 1)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 33554434,
-      "name": "FabricIngress.spgw_ingress.uplink_pdr_lookup$action",
-      "table_type": "action",
-      "size": 4096,
-      "stage_tables": [
-        {
-          "stage_number": 3,
-          "size": 4096,
-          "stage_table_type": "action_data",
-          "logical_table_id": 1,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 4,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 3,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 120,
-                      "field_name": "far_id"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 2,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 88,
-                      "field_name": "far_id"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 56,
-                      "field_name": "far_id"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 24,
-                      "field_name": "far_id"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870932
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 4,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 3,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 2,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870933
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 89 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-          "handle": 536870932,
-          "p4_parameters": [
-            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
-            {
-              "name": "far_id",
-              "start_bit": 32,
-              "position": 1,
-              "bit_width": 32
-            }
-          ]
-        },
-        { "name": "NoAction", "handle": 536870933, "p4_parameters": [] }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777235,
-      "name": "tbl_act_12",
+      "direction": "egress",
+      "handle": 16777243,
+      "name": "tbl_spgw_gtpu_encap",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 3,
+            "stage_number": 0,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 2,
+            "logical_table_id": 6,
             "has_attached_gateway": true,
-            "default_next_table": 52,
+            "default_next_table": 7,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -119715,393 +96392,18 @@
             "memory_resource_allocation": null,
             "result_physical_buses": [ 2 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 3,
+              "stage_number": 0,
               "stage_table_type": "ternary_indirection",
               "size": 0,
               "pack_format": [
                 {
                   "memory_word_width": 128,
                   "table_word_width": 128,
-                  "entries_per_table_word": 32,
+                  "entries_per_table_word": 2,
                   "number_memory_units_per_table_word": 1,
                   "entries": [
                     {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
+                      "entry_number": 1,
                       "fields": [
                         {
                           "start_bit": 0,
@@ -120115,388 +96417,23 @@
                         },
                         {
                           "start_bit": 0,
-                          "field_width": 3,
+                          "field_width": 32,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
-                          "source": "zero",
+                          "source": "immediate",
                           "enable_pfe": false,
                           "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
+                          "field_name": "immediate"
                         },
                         {
                           "start_bit": 0,
-                          "field_width": 3,
+                          "field_width": 31,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
                           "source": "zero",
                           "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_33_63--"
                         }
                       ]
                     },
@@ -120515,13 +96452,23 @@
                         },
                         {
                           "start_bit": 0,
-                          "field_width": 3,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 31,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
                           "source": "zero",
                           "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_33_63--"
                         }
                       ]
                     }
@@ -120531,21 +96478,38 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_12",
-                  "action_handle": 536870936,
+                  "action_name": "FabricEgress.spgw.gtpu_encap",
+                  "action_handle": 536870979,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 52,
+                  "next_table_full": 7,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
+                  "vliw_instruction_full": 68,
                   "next_tables": [
                     {
-                      "next_table_name": "FabricIngress.filtering.ingress_port_vlan",
-                      "next_table_logical_id": 4,
-                      "next_table_stage_no": 3
+                      "next_table_name": "tbl_act_14",
+                      "next_table_logical_id": 7,
+                      "next_table_stage_no": 0
                     }
                   ],
-                  "immediate_fields": []
+                  "immediate_fields": [
+                    {
+                      "param_name": "constant_36",
+                      "param_type": "constant",
+                      "const_value": 36,
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 16
+                    },
+                    {
+                      "param_name": "constant_16",
+                      "param_type": "constant",
+                      "const_value": 16,
+                      "param_shift": 0,
+                      "dest_start": 16,
+                      "dest_width": 16
+                    }
+                  ]
                 }
               ]
             }
@@ -120560,15 +96524,127 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_12",
-          "handle": 536870936,
+          "name": "FabricEgress.spgw.gtpu_encap",
+          "handle": 536870979,
           "primitives": [
             {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu_ipv4.$valid" }
+            },
+            {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "spgw_ingress_hasReturned" },
+              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "immediate", "name": "4" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "immediate", "name": "5" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "src2": { "type": "immediate", "name": "36" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x1513" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "64" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "17" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu_udp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.gtpu_udp.dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "2152" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.gtpu_udp.len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.spgw.ipv4_len" },
+              "src2": { "type": "immediate", "name": "16" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.outer_gtpu.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.version" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "immediate", "name": "0x1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.pt" },
               "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
+              "src1": { "type": "immediate", "name": "0x1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.spare" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.ex_flag" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.seq_flag" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.npdu_flag" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.msgtype" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "0xff" }
             }
           ],
           "indirect_resources": [],
@@ -120589,7 +96665,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870936,
+      "default_action_handle": 536870979,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -120600,54 +96676,251 @@
       "static_entries": []
     },
     {
-      "direction": "ingress",
-      "attached_to": "tbl_act_12",
-      "handle": 1879048208,
-      "name": "cond-10",
+      "direction": "egress",
+      "attached_to": "tbl_spgw_gtpu_encap",
+      "handle": 1879048196,
+      "name": "cond-23",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 50, "true": 51 },
-          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 7, "true": 6 },
+          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": {
-            "false": "tbl_act_12",
-            "true": "FabricIngress.spgw_ingress.downlink_pdr_lookup"
-          },
-          "logical_table_id": 2,
-          "stage_number": 3,
+          "next_table_names": { "false": "tbl_act_14", "true": "tbl_spgw_gtpu_encap" },
+          "logical_table_id": 6,
+          "stage_number": 0,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
       "condition_fields": [
         {
-          "name": "fabric_metadata.spgw.direction",
-          "start_bit": 0,
-          "bit_width": 2
+          "name": "fabric_metadata.spgw.needs_gtpu_encap",
+          "start_bit": 4,
+          "bit_width": 1
         }
       ],
-      "condition": "(fabric_metadata.spgw.direction == 2)",
+      "condition": "(fabric_metadata.spgw.needs_gtpu_encap == 1)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 16777244,
+      "name": "tbl_act_14",
+      "table_type": "match",
+      "size": 8388608,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 0,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 7,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 0,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 0 ],
+            "action_format": [
+              {
+                "action_name": "act_14",
+                "action_handle": 536870980,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 8,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "next_tables": [
+                  {
+                    "next_table_name": "",
+                    "next_table_logical_id": 8,
+                    "next_table_stage_no": 0
+                  }
+                ],
+                "immediate_fields": []
+              }
+            ]
+          }
+        ],
+        "match_type": "match_with_no_key"
+      },
+      "actions": [
+        {
+          "name": "act_14",
+          "handle": 536870980,
+          "primitives": [
+            {
+              "name": "CountFromHashPrimitive",
+              "dst": { "type": "counter", "name": "FabricEgress.spgw.pdr_counter" },
+              "idx": {
+                "type": "hash",
+                "name": "hash_FabricEgress.spgw.pdr_counter",
+                "algorithm": "identity"
+              },
+              "hash_inputs": [ "fabric_metadata.spgw.ctr_id" ]
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": true,
+          "override_stat_addr_pfe": true,
+          "override_stat_full_addr": 524288,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536870980,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "indirect",
+          "handle": 67108876,
+          "name": "FabricEgress.spgw.pdr_counter"
+        }
+      ],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_14",
+      "handle": 1879048197,
+      "name": "cond-24",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 8, "true": 8 },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "", "true": "" },
+          "logical_table_id": 7,
+          "stage_number": 0,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+          "start_bit": 5,
+          "bit_width": 1
+        }
+      ],
+      "condition": "(fabric_metadata.spgw.skip_egress_pdr_ctr == 0)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 67108876,
+      "name": "FabricEgress.spgw.pdr_counter",
+      "table_type": "statistics",
+      "size": 2048,
+      "stage_tables": [
+        {
+          "stage_number": 0,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 7,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "indirect",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 64,
+      "packet_counter_resolution": 64,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "egress",
+      "attached_to": "-",
+      "handle": 1879048198,
+      "name": "cond-25",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 100, "true": 17 },
+          "memory_resource_allocation": { "memory_unit": 6, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "tbl_egress_next_set_mpls",
+            "true": "FabricEgress.process_int_main.process_int_source.tb_int_source"
+          },
+          "logical_table_id": 8,
+          "stage_number": 0,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        { "name": "ig_intr_md.ingress_port", "start_bit": 0, "bit_width": 8 },
+        { "name": "ig_intr_md.ingress_port", "start_bit": 8, "bit_width": 1 },
+        { "name": "eg_intr_md.egress_port", "start_bit": 16, "bit_width": 8 },
+        { "name": "eg_intr_md.egress_port", "start_bit": 24, "bit_width": 1 },
+        { "name": "hdr.udp.$valid", "start_bit": 32, "bit_width": 1 },
+        { "name": "hdr.tcp.$valid", "start_bit": 33, "bit_width": 1 }
+      ],
+      "condition": "(ig_intr_md.ingress_port != 320 && eg_intr_md.egress_port != 320 && (hdr.udp.$valid == 1 || hdr.tcp.$valid == 1))",
       "size": 0
     },
     {
       "direction": "ingress",
-      "handle": 16777236,
-      "name": "FabricIngress.spgw_ingress.downlink_pdr_lookup",
+      "handle": 16777219,
+      "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_gtpu",
       "table_type": "match",
-      "size": 4096,
+      "size": 4,
       "action_data_table_refs": [
         {
           "how_referenced": "direct",
-          "handle": 33554435,
-          "name": "FabricIngress.spgw_ingress.downlink_pdr_lookup$action"
+          "handle": 33554434,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_gtpu$action"
         }
       ],
       "selection_table_refs": [],
       "meter_table_refs": [],
       "statistics_table_refs": [],
       "stateful_table_refs": [],
-      "default_action_handle": 536870935,
+      "default_action_handle": 536870919,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -120655,27 +96928,48 @@
       "uses_range": false,
       "match_key_fields": [
         {
-          "name": "ue_addr",
-          "global_name": "hdr.ipv4.dst_addr",
+          "name": "hdr.inner_tcp.$valid",
           "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
+          "bit_width": 1,
+          "bit_width_full": 1,
           "position": 0,
           "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "hdr.ipv4",
-          "field_name": "dst_addr"
+          "is_valid": true,
+          "instance_name": "hdr.inner_tcp",
+          "field_name": "$valid"
+        },
+        {
+          "name": "hdr.inner_udp.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 1,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.inner_udp",
+          "field_name": "$valid"
+        },
+        {
+          "name": "hdr.inner_icmp.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 2,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.inner_icmp",
+          "field_name": "$valid"
         }
       ],
       "ap_bind_indirect_res_to_match": [],
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 3,
-            "size": 4096,
+            "stage_number": 1,
+            "size": 1024,
             "stage_table_type": "hash_match",
-            "logical_table_id": 3,
-            "has_attached_gateway": false,
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
             "default_next_table": 255,
             "hash_functions": [
               {
@@ -120684,63 +96978,9 @@
                     "bits_to_xor": [
                       {
                         "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "field_name": "hdr.inner_udp.$valid",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
                       }
                     ],
                     "hash_bit": 0,
@@ -120749,94 +96989,10 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
+                        "field_bit": 0,
+                        "field_name": "hdr.inner_tcp.$valid",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 1,
@@ -120845,3175 +97001,102 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
+                        "field_bit": 0,
+                        "field_name": "hdr.inner_icmp.$valid",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
                       }
                     ],
                     "hash_bit": 2,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 5,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 8,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 11,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 12,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 15,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 16,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 20,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 21,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 22,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 23,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 25,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 30,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 31,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 34,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 35,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 36,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 37,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 38,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 39,
                     "seed": 0
                   }
                 ],
-                "hash_function_number": 1,
-                "ghost_bit_to_hash_bit": [
-                  [ 0, 11, 22, 33 ],
-                  [ 1, 12, 23, 34 ],
-                  [ 2, 13, 24, 35 ],
-                  [ 3, 14, 25, 36 ],
-                  [ 4, 15, 26, 37 ],
-                  [ 5, 16, 27, 38 ],
-                  [ 6, 17, 28, 39 ],
-                  [ 7, 18, 29, 30 ],
-                  [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ]
-                ],
+                "hash_function_number": 0,
+                "ghost_bit_to_hash_bit": [ [ 2 ], [ 1 ], [ 0 ] ],
                 "ghost_bit_info": [
-                  { "field_name": "ue_addr", "bit_in_match_spec": 0 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 1 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 2 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 3 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 4 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 5 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 6 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 7 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 8 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 9 }
+                  {
+                    "field_name": "hdr.inner_icmp.$valid",
+                    "bit_in_match_spec": 0
+                  },
+                  {
+                    "field_name": "hdr.inner_tcp.$valid",
+                    "bit_in_match_spec": 0
+                  },
+                  {
+                    "field_name": "hdr.inner_udp.$valid",
+                    "bit_in_match_spec": 0
+                  }
                 ]
               }
             ],
             "action_format": [
               {
-                "action_name": "NoAction",
-                "action_handle": 536870935,
+                "action_name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_tcp",
+                "action_handle": 536870916,
                 "table_name": "--END_OF_PIPELINE--",
-                "next_table": 4294967295,
-                "next_table_full": 52,
-                "vliw_instruction": -1,
-                "vliw_instruction_full": 64,
+                "next_table": 0,
+                "next_table_full": 32,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 65,
                 "next_tables": [
                   {
-                    "next_table_name": "FabricIngress.filtering.ingress_port_vlan",
-                    "next_table_logical_id": 4,
-                    "next_table_stage_no": 3
+                    "next_table_name": "FabricIngress.spgw.downlink_pdrs",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 2
                   }
                 ],
                 "immediate_fields": []
               },
               {
-                "action_name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-                "action_handle": 536870934,
+                "action_name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_udp",
+                "action_handle": 536870917,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
-                "next_table_full": 52,
-                "vliw_instruction": 0,
+                "next_table_full": 32,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricIngress.spgw.downlink_pdrs",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 2
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_icmp",
+                "action_handle": 536870918,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 32,
+                "vliw_instruction": 3,
                 "vliw_instruction_full": 68,
                 "next_tables": [
                   {
-                    "next_table_name": "FabricIngress.filtering.ingress_port_vlan",
-                    "next_table_logical_id": 4,
-                    "next_table_stage_no": 3
+                    "next_table_name": "FabricIngress.spgw.downlink_pdrs",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 2
                   }
                 ],
-                "immediate_fields": [
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_unknown",
+                "action_handle": 536870919,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 32,
+                "vliw_instruction": 4,
+                "vliw_instruction_full": 70,
+                "next_tables": [
                   {
-                    "param_name": "ctr_id",
-                    "param_type": "parameter",
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 32
+                    "next_table_name": "FabricIngress.spgw.downlink_pdrs",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 2
                   }
-                ]
+                ],
+                "immediate_fields": []
               }
             ],
             "result_physical_buses": [ 14 ],
@@ -124039,50 +97122,14 @@
                       "fields": [
                         {
                           "start_bit": 0,
-                          "field_width": 32,
+                          "field_width": 3,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
-                          "source": "immediate",
+                          "source": "instr",
                           "enable_pfe": false,
                           "lsb_mem_word_offset": 0,
-                          "field_name": "immediate",
+                          "field_name": "action",
                           "match_mode": "unused"
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 50,
-                          "start_bit": 10,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 6
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 32,
-                          "start_bit": 16,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 40,
-                          "start_bit": 24,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
                         }
                       ]
                     }
@@ -124111,7 +97158,7 @@
             },
             "ways": [
               {
-                "stage_number": 3,
+                "stage_number": 1,
                 "way_number": 0,
                 "stage_table_type": "hash_way",
                 "size": 1024,
@@ -124127,13 +97174,13 @@
                         "fields": [
                           {
                             "start_bit": 0,
-                            "field_width": 32,
+                            "field_width": 3,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
-                            "source": "immediate",
+                            "source": "instr",
                             "enable_pfe": false,
                             "lsb_mem_word_offset": 0,
-                            "field_name": "immediate",
+                            "field_name": "action",
                             "match_mode": "unused"
                           },
                           {
@@ -124148,61 +97195,14 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
                             "start_bit": 0,
-                            "field_width": 2,
+                            "field_width": 109,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
                             "source": "zero",
                             "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
+                            "lsb_mem_word_offset": 3,
+                            "field_name": "--padding_3_111--",
                             "match_mode": "unused"
                           },
                           {
@@ -124231,372 +97231,6 @@
                   "number_select_bits": 0,
                   "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
                 }
-              },
-              {
-                "stage_number": 3,
-                "way_number": 1,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 2,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 10,
-                  "hash_entry_bit_hi": 19,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
-                }
-              },
-              {
-                "stage_number": 3,
-                "way_number": 2,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 2,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 20,
-                  "hash_entry_bit_hi": 29,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
-                }
-              },
-              {
-                "stage_number": 3,
-                "way_number": 3,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 2,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 30,
-                  "hash_entry_bit_hi": 39,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 3 ] } ]
-                }
               }
             ]
           }
@@ -124606,2565 +97240,456 @@
       },
       "actions": [
         {
-          "name": "NoAction",
-          "handle": 536870935,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-          "handle": 536870934,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_tcp",
+          "handle": 536870916,
           "primitives": [
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.pdr_hit" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x800" }
             },
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ctr_id" },
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
               "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "ctr_id" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
             },
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_id" },
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
               "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "far_id" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [
-            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
-            {
-              "name": "far_id",
-              "start_bit": 32,
-              "position": 1,
-              "bit_width": 32
-            }
-          ],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 33554435,
-      "name": "FabricIngress.spgw_ingress.downlink_pdr_lookup$action",
-      "table_type": "action",
-      "size": 4096,
-      "stage_tables": [
-        {
-          "stage_number": 3,
-          "size": 4096,
-          "stage_table_type": "action_data",
-          "logical_table_id": 3,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 4,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 3,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 120,
-                      "field_name": "far_id"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 2,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 88,
-                      "field_name": "far_id"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 56,
-                      "field_name": "far_id"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 24,
-                      "field_name": "far_id"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870934
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 4,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 3,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 2,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870935
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 93 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-          "handle": 536870934,
-          "p4_parameters": [
-            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
-            {
-              "name": "far_id",
-              "start_bit": 32,
-              "position": 1,
-              "bit_width": 32
-            }
-          ]
-        },
-        { "name": "NoAction", "handle": 536870935, "p4_parameters": [] }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777237,
-      "name": "FabricIngress.filtering.ingress_port_vlan",
-      "table_type": "match",
-      "size": 2048,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 3,
-            "size": 2048,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 4,
-            "has_attached_gateway": false,
-            "default_next_table": 64,
-            "pack_format": [
-              {
-                "table_word_width": 47,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--version--",
-                        "lsb_mem_word_offset": 43,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "version",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "ig_port",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 9
-                      },
-                      {
-                        "field_name": "vlan_is_valid",
-                        "lsb_mem_word_offset": 20,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "vlan_id",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "vlan_id",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 10,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 10
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 21,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 29,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 41,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": {
-              "memory_type": "tcam",
-              "memory_units_and_vpns": [
-                { "memory_units": [ 0 ], "vpns": [ 0 ] },
-                { "memory_units": [ 1 ], "vpns": [ 1 ] },
-                { "memory_units": [ 2 ], "vpns": [ 2 ] },
-                { "memory_units": [ 3 ], "vpns": [ 3 ] }
-              ],
-              "spare_bank_memory_unit": 3
-            },
-            "result_physical_buses": [ 0 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 3,
-              "stage_table_type": "ternary_indirection",
-              "size": 4096,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 4,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 2,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 16,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 98,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 14,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 114,
-                          "field_name": "--padding_18_31--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 2,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 16,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 66,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 14,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 82,
-                          "field_name": "--padding_18_31--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 2,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 16,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 34,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 14,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 50,
-                          "field_name": "--padding_18_31--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 2,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 16,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 2,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 14,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 18,
-                          "field_name": "--padding_18_31--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": {
-                "memory_type": "sram",
-                "memory_units_and_vpns": [ { "memory_units": [ 2 ], "vpns": [ 0 ] } ],
-                "spare_bank_memory_unit": 2
-              },
-              "action_format": [
-                {
-                  "action_name": "FabricIngress.filtering.deny",
-                  "action_handle": 536870921,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 64,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 67,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_15",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 4
-                    }
-                  ],
-                  "immediate_fields": []
-                },
-                {
-                  "action_name": "FabricIngress.filtering.permit",
-                  "action_handle": 536870922,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 64,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 64,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_15",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 4
-                    }
-                  ],
-                  "immediate_fields": []
-                },
-                {
-                  "action_name": "FabricIngress.filtering.permit_with_internal_vlan",
-                  "action_handle": 536870923,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 64,
-                  "vliw_instruction": 2,
-                  "vliw_instruction_full": 69,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_15",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 4
-                    }
-                  ],
-                  "immediate_fields": [
-                    {
-                      "param_name": "vlan_id",
-                      "param_type": "parameter",
-                      "param_shift": 0,
-                      "dest_start": 8,
-                      "dest_width": 8
-                    },
-                    {
-                      "param_name": "vlan_id",
-                      "param_type": "parameter",
-                      "param_shift": 8,
-                      "dest_start": 0,
-                      "dest_width": 4
-                    }
-                  ]
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 67108866,
-          "name": "FabricIngress.filtering.ingress_port_vlan_counter"
-        }
-      ],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "FabricIngress.filtering.deny",
-          "handle": 536870921,
-          "primitives": [
-            {
-              "name": "CountPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricIngress.filtering.ingress_port_vlan_counter"
-              }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
             },
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.skip_forwarding" },
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
               "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
             },
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.skip_next" },
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.tcp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.seq_no" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.seq_no" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.ack_no" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.ack_no" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.data_offset" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.data_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.res" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.res" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.ecn" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.ctrl" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.ctrl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.window" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.window" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.urgent_ptr" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.urgent_ptr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_tcp.$valid" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_udp",
+          "handle": 536870917,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x800" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
               "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricIngress.filtering.permit",
-          "handle": 536870922,
-          "primitives": [
-            {
-              "name": "CountPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricIngress.filtering.ingress_port_vlan_counter"
-              }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "disallowed_as_default_action_reason": "",
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricIngress.filtering.permit_with_internal_vlan",
-          "handle": 536870923,
-          "primitives": [
-            {
-              "name": "CountPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricIngress.filtering.ingress_port_vlan_counter"
-              }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
             },
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.vlan_id" },
-              "dst_mask": { "type": "immediate", "name": "4095" },
-              "src1": { "type": "action_param", "name": "vlan_id" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "disallowed_as_default_action_reason": "",
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [
-            {
-              "name": "vlan_id",
-              "start_bit": 0,
-              "position": 0,
-              "bit_width": 12
-            }
-          ],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870921,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "ig_port",
-          "global_name": "ig_intr_md.ingress_port",
-          "start_bit": 0,
-          "bit_width": 9,
-          "bit_width_full": 9,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "ig_intr_md",
-          "field_name": "ingress_port"
-        },
-        {
-          "name": "vlan_is_valid",
-          "global_name": "hdr.vlan_tag.$valid",
-          "start_bit": 0,
-          "bit_width": 1,
-          "bit_width_full": 1,
-          "position": 1,
-          "match_type": "exact",
-          "is_valid": true,
-          "instance_name": "hdr.vlan_tag",
-          "field_name": "$valid"
-        },
-        {
-          "name": "vlan_id",
-          "global_name": "hdr.vlan_tag.vlan_id",
-          "start_bit": 0,
-          "bit_width": 12,
-          "bit_width_full": 12,
-          "position": 2,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "hdr.vlan_tag",
-          "field_name": "vlan_id"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 67108866,
-      "name": "FabricIngress.filtering.ingress_port_vlan_counter",
-      "table_type": "statistics",
-      "size": 2048,
-      "stage_tables": [
-        {
-          "stage_number": 3,
-          "size": 2048,
-          "stage_table_type": "statistics",
-          "logical_table_id": 4,
-          "pack_format": [
-            {
-              "table_word_width": 128,
-              "memory_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [
-              { "memory_units": [ 78 ], "vpns": [ 0 ] },
-              { "memory_units": [ 79 ], "vpns": [ 1 ] }
-            ],
-            "spare_bank_memory_unit": 80
-          },
-          "stats_alu_index": 3
-        }
-      ],
-      "how_referenced": "direct",
-      "enable_pfe": false,
-      "pfe_bit_position": 0,
-      "byte_counter_resolution": 64,
-      "packet_counter_resolution": 64,
-      "statistics_type": "packets_and_bytes"
-    },
-    {
-      "direction": "egress",
-      "handle": 16777259,
-      "name": "tbl_act_28",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 3,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 5,
-            "has_attached_gateway": true,
-            "default_next_table": 54,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 1 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 3,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_29",
-                  "action_handle": 536871024,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 54,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
-                      "next_table_logical_id": 6,
-                      "next_table_stage_no": 3
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_29",
-          "handle": 536871024,
-          "primitives": [
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.int_header.total_hop_cnt" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.int_header.total_hop_cnt" },
-              "src2": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536871024,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_act_28",
-      "handle": 1879048209,
-      "name": "cond-34",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 85, "true": 53 },
-          "memory_resource_allocation": { "memory_unit": 12, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_egress_next_set_mpls", "true": "tbl_act_28" },
-          "logical_table_id": 5,
-          "stage_number": 3,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "process_int_main_process_int_transit_hasReturned",
-          "start_bit": 7,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(!process_int_main_process_int_transit_hasReturned)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777260,
-      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
-      "table_type": "match",
-      "size": 1024,
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554444,
-          "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003$action"
-        }
-      ],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "default_action_handle": 536871006,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "hdr.int_header.instruction_mask_0003",
-          "start_bit": 0,
-          "bit_width": 4,
-          "bit_width_full": 4,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "hdr.int_header",
-          "field_name": "instruction_mask_0003"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 3,
-            "size": 1024,
-            "stage_table_type": "hash_match",
-            "logical_table_id": 6,
-            "has_attached_gateway": false,
-            "default_next_table": 255,
-            "hash_functions": [
-              {
-                "hash_bits": [
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "hdr.int_header.instruction_mask_0003",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 76
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "hdr.int_header.instruction_mask_0003",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 77
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "hdr.int_header.instruction_mask_0003",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 78
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "hdr.int_header.instruction_mask_0003",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 79
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 0
-                  }
-                ],
-                "hash_function_number": 2,
-                "ghost_bit_to_hash_bit": [ [ 0 ], [ 1 ], [ 2 ], [ 3 ] ],
-                "ghost_bit_info": [
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0003",
-                    "bit_in_match_spec": 0
-                  },
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0003",
-                    "bit_in_match_spec": 1
-                  },
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0003",
-                    "bit_in_match_spec": 2
-                  },
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0003",
-                    "bit_in_match_spec": 3
-                  }
-                ]
-              }
-            ],
-            "action_format": [
-              {
-                "action_name": "NoAction",
-                "action_handle": 536871006,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 4294967295,
-                "next_table_full": 66,
-                "vliw_instruction": -1,
-                "vliw_instruction_full": 67,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
-                "action_handle": 536870990,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 0,
-                "vliw_instruction_full": 64,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
-                "action_handle": 536870991,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 2,
-                "vliw_instruction_full": 66,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
-                "action_handle": 536870992,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 4,
-                "vliw_instruction_full": 68,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
-                "action_handle": 536870993,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 6,
-                "vliw_instruction_full": 70,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
-                "action_handle": 536870994,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 8,
-                "vliw_instruction_full": 72,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
-                "action_handle": 536870995,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 10,
-                "vliw_instruction_full": 74,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
-                "action_handle": 536870996,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 12,
-                "vliw_instruction_full": 76,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
-                "action_handle": 536870997,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 14,
-                "vliw_instruction_full": 78,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
-                "action_handle": 536870998,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 16,
-                "vliw_instruction_full": 80,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
-                "action_handle": 536870999,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 18,
-                "vliw_instruction_full": 82,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
-                "action_handle": 536871000,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 20,
-                "vliw_instruction_full": 84,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
-                "action_handle": 536871001,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 22,
-                "vliw_instruction_full": 86,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
-                "action_handle": 536871002,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 24,
-                "vliw_instruction_full": 88,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
-                "action_handle": 536871003,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 26,
-                "vliw_instruction_full": 90,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
-                "action_handle": 536871004,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 28,
-                "vliw_instruction_full": 92,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
-                "action_handle": 536871005,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 30,
-                "vliw_instruction_full": 94,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_16",
-                    "param_type": "constant",
-                    "const_value": 16,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              }
-            ],
-            "result_physical_buses": [ 13 ],
-            "pack_format": [
-              {
-                "memory_word_width": 128,
-                "table_word_width": 128,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1
-              }
-            ],
-            "memory_resource_allocation": null,
-            "stash_allocation": {
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 16,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 6,
-                          "field_name": "immediate",
-                          "match_mode": "unused"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 6,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action",
-                          "match_mode": "unused"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "num_stash_entries": 2,
-              "stash_entries": [
-                [
-                  {
-                    "stash_entry_id": 24,
-                    "stash_match_data_select": 1,
-                    "stash_hashbank_select": 1,
-                    "hash_function_id": 0
-                  }
-                ],
-                [
-                  {
-                    "stash_entry_id": 25,
-                    "stash_match_data_select": 1,
-                    "stash_hashbank_select": 1,
-                    "hash_function_id": 0
-                  }
-                ]
-              ]
-            },
-            "ways": [
-              {
-                "stage_number": 3,
-                "way_number": 0,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 6,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 16,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 6,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 90,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 22,
-                            "field_name": "--padding_22_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 0,
-                  "hash_entry_bit_hi": 9,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 76 ], "vpns": [ 0 ] } ]
-                }
-              }
-            ]
-          }
-        ],
-        "match_type": "exact",
-        "uses_dynamic_key_masks": false
-      },
-      "actions": [
-        {
-          "name": "NoAction",
-          "handle": 536871006,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
-          "handle": 536870990,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
-          "handle": 536870991,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
               "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.checksum" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_udp.$valid" }
             }
           ],
           "indirect_resources": [],
-          "allowed_as_default_action": true,
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
           "is_compiler_added_action": false,
           "constant_default_action": false,
           "p4_parameters": [],
@@ -127180,32 +97705,215 @@
           "is_action_meter_color_aware": false
         },
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
-          "handle": 536870992,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_icmp",
+          "handle": 536870918,
           "primitives": [
             {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
               "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
+              "src1": { "type": "immediate", "name": "0x800" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.icmp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.icmp_type" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.icmp_type" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.icmp_code" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.icmp_code" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.identifier" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.identifier" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.sequence_number" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.sequence_number" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.timestamp" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.timestamp" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_icmp.$valid" }
             }
           ],
           "indirect_resources": [],
-          "allowed_as_default_action": true,
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
           "is_compiler_added_action": false,
           "constant_default_action": false,
           "p4_parameters": [],
@@ -127221,588 +97929,160 @@
           "is_action_meter_color_aware": false
         },
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
-          "handle": 536870993,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_unknown",
+          "handle": 536870919,
           "primitives": [
             {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
               "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
-          "handle": 536870994,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+              "src1": { "type": "immediate", "name": "0x800" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
               "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
               "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
-          "handle": 536870995,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
             },
             {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
               "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
-          "handle": 536870996,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
               "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
               "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
-          "handle": 536870997,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
             },
             {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
             },
             {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
-          "handle": 536870998,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
-          "handle": 536870999,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
-          "handle": 536871000,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
-          "handle": 536871001,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
-          "handle": 536871002,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
-          "handle": 536871003,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
-          "handle": 536871004,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
-          "handle": 536871005,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "4" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "16" }
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
             }
           ],
           "indirect_resources": [],
@@ -127826,209 +98106,81 @@
         {
           "priority": 0,
           "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x0"
-            }
+            { "field_name": "hdr.inner_tcp.$valid", "value": "0x1" },
+            { "field_name": "hdr.inner_udp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_icmp.$valid", "value": "0x0" }
           ],
-          "action_handle": 536870990,
+          "action_handle": 536870916,
           "is_default_entry": false,
           "action_parameters_values": []
         },
         {
           "priority": 1,
           "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x1"
-            }
+            { "field_name": "hdr.inner_tcp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_udp.$valid", "value": "0x1" },
+            { "field_name": "hdr.inner_icmp.$valid", "value": "0x0" }
           ],
-          "action_handle": 536870991,
+          "action_handle": 536870917,
           "is_default_entry": false,
           "action_parameters_values": []
         },
         {
           "priority": 2,
           "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x2"
-            }
+            { "field_name": "hdr.inner_tcp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_udp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_icmp.$valid", "value": "0x1" }
           ],
-          "action_handle": 536870992,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 3,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x3"
-            }
-          ],
-          "action_handle": 536870993,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 4,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x4"
-            }
-          ],
-          "action_handle": 536870994,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 5,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x5"
-            }
-          ],
-          "action_handle": 536870995,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 6,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x6"
-            }
-          ],
-          "action_handle": 536870996,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 7,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x7"
-            }
-          ],
-          "action_handle": 536870997,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 8,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x8"
-            }
-          ],
-          "action_handle": 536870998,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 9,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x9"
-            }
-          ],
-          "action_handle": 536870999,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 10,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0xa"
-            }
-          ],
-          "action_handle": 536871000,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 11,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0xb"
-            }
-          ],
-          "action_handle": 536871001,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 12,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0xc"
-            }
-          ],
-          "action_handle": 536871002,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 13,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0xd"
-            }
-          ],
-          "action_handle": 536871003,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 14,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0xe"
-            }
-          ],
-          "action_handle": 536871004,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 15,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0xf"
-            }
-          ],
-          "action_handle": 536871005,
+          "action_handle": 536870918,
           "is_default_entry": false,
           "action_parameters_values": []
         }
       ]
     },
     {
-      "direction": "egress",
-      "handle": 33554444,
-      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003$action",
+      "direction": "ingress",
+      "attached_to": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_gtpu",
+      "handle": 1879048199,
+      "name": "cond-2",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 32, "true": 16 },
+          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "FabricIngress.spgw.downlink_pdrs",
+            "true": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_gtpu"
+          },
+          "logical_table_id": 0,
+          "stage_number": 1,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.spgw.src_iface",
+          "start_bit": 0,
+          "bit_width": 8
+        }
+      ],
+      "condition": "(fabric_metadata.spgw.src_iface == 3)",
+      "size": 0
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554434,
+      "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_gtpu$action",
       "table_type": "action",
       "size": 2048,
       "stage_tables": [
         {
-          "stage_number": 3,
+          "stage_number": 1,
           "size": 2048,
           "stage_table_type": "action_data",
-          "logical_table_id": 6,
+          "logical_table_id": 0,
           "pack_format": [
             {
               "memory_word_width": 128,
@@ -128041,588 +98193,24 @@
                   "fields": [
                     {
                       "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870990
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870991
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
                       "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
                       "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "--padding_44_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "--padding_48_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 43,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "--padding_44_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "--padding_48_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871000
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "--padding_17_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "--padding_44_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 43,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "--padding_17_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "--padding_44_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871001
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 64,
                       "field_name": "$constant0"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871002
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
                       "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 80,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 75,
                       "field_name": "$constant1"
                     },
                     {
@@ -128633,7 +98221,7 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 76,
+                      "lsb_mem_word_offset": 78,
                       "field_name": "$constant2"
                     },
                     {
@@ -128643,8 +98231,8 @@
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 80,
                       "field_name": "$constant3"
                     },
                     {
@@ -128666,476 +98254,18 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 110,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
                       "lsb_mem_word_offset": 112,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "--padding_13_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "--padding_17_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "--padding_45_47--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 43,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "--padding_13_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "--padding_17_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "--padding_45_47--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871003
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "--padding_13_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "--padding_45_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "--padding_48_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 43,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "--padding_13_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "--padding_45_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "--padding_48_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871004
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 111,
                       "field_name": "$constant6"
                     },
                     {
@@ -129150,13 +98280,23 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 2,
+                      "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 77,
-                      "field_name": "--padding_13_14--"
+                      "field_name": "--padding_13_13--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 79,
+                      "field_name": "--padding_15_15--"
                     },
                     {
                       "start_bit": 0,
@@ -129170,13 +98310,23 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 2,
+                      "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 109,
-                      "field_name": "--padding_45_46--"
+                      "field_name": "--padding_45_45--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 111,
+                      "field_name": "--padding_47_47--"
                     },
                     {
                       "start_bit": 0,
@@ -129200,8 +98350,19 @@
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 16,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 12,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 11,
                       "field_name": "$constant1"
                     },
                     {
@@ -129212,7 +98373,7 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 15,
+                      "lsb_mem_word_offset": 14,
                       "field_name": "$constant2"
                     },
                     {
@@ -129222,23 +98383,12 @@
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 12,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 16,
                       "field_name": "$constant3"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
                       "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
@@ -129246,17 +98396,28 @@
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
                       "lsb_mem_word_offset": 43,
-                      "field_name": "$constant5"
+                      "field_name": "$constant4"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 2,
+                      "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 47,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 46,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 48,
                       "field_name": "$constant6"
                     },
                     {
@@ -129271,13 +98432,23 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 2,
+                      "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 13,
-                      "field_name": "--padding_13_14--"
+                      "field_name": "--padding_13_13--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 15,
+                      "field_name": "--padding_15_15--"
                     },
                     {
                       "start_bit": 0,
@@ -129291,13 +98462,23 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 2,
+                      "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 45,
-                      "field_name": "--padding_45_46--"
+                      "field_name": "--padding_45_45--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 47,
+                      "field_name": "--padding_47_47--"
                     },
                     {
                       "start_bit": 0,
@@ -129312,7 +98493,7 @@
                   ]
                 }
               ],
-              "action_handle": 536871005
+              "action_handle": 536870918
             },
             {
               "memory_word_width": 128,
@@ -129325,846 +98506,25 @@
                   "fields": [
                     {
                       "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870992
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
+                      "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 64,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 76,
                       "field_name": "$constant0"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870993
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870994
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
                       "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 12,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_11--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "--padding_13_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "--padding_17_43--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "--padding_45_47--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 12,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_11--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "--padding_13_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "--padding_17_43--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "--padding_45_47--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870995
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 12,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_11--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "--padding_13_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 28,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_43--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "--padding_45_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "--padding_48_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 12,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_11--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "--padding_13_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 28,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_43--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "--padding_45_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "--padding_48_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870996
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 12,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_11--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "--padding_13_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "--padding_17_43--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "--padding_45_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 12,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_11--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "--padding_13_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "--padding_17_43--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "--padding_45_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870997
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870998
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
                       "lsb_mem_word_offset": 75,
-                      "field_name": "$constant2"
+                      "field_name": "$constant1"
                     },
                     {
                       "start_bit": 0,
@@ -130174,7 +98534,18 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 107,
+                      "lsb_mem_word_offset": 71,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 79,
                       "field_name": "$constant3"
                     },
                     {
@@ -130185,58 +98556,100 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 112,
+                      "lsb_mem_word_offset": 103,
                       "field_name": "$constant4"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 11,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 107,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 111,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_10--"
+                      "field_name": "--padding_0_6--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 4,
+                      "field_width": 3,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_15--"
+                      "lsb_mem_word_offset": 72,
+                      "field_name": "--padding_8_10--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 26,
+                      "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "--padding_17_42--"
+                      "lsb_mem_word_offset": 77,
+                      "field_name": "--padding_13_14--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 4,
+                      "field_width": 23,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "--padding_44_47--"
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "--padding_16_38--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 15,
+                      "field_width": 3,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "--padding_49_63--"
+                      "lsb_mem_word_offset": 104,
+                      "field_name": "--padding_40_42--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 109,
+                      "field_name": "--padding_45_46--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 112,
+                      "field_name": "--padding_48_63--"
                     }
                   ]
                 },
@@ -130250,8 +98663,19 @@
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 16,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 12,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 11,
                       "field_name": "$constant1"
                     },
                     {
@@ -130262,7 +98686,7 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
+                      "lsb_mem_word_offset": 7,
                       "field_name": "$constant2"
                     },
                     {
@@ -130272,8 +98696,8 @@
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 43,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 15,
                       "field_name": "$constant3"
                     },
                     {
@@ -130284,63 +98708,105 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 48,
+                      "lsb_mem_word_offset": 39,
                       "field_name": "$constant4"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 11,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 43,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 47,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_10--"
+                      "field_name": "--padding_0_6--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 4,
+                      "field_width": 3,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_15--"
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "--padding_8_10--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 26,
+                      "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "--padding_17_42--"
+                      "lsb_mem_word_offset": 13,
+                      "field_name": "--padding_13_14--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 4,
+                      "field_width": 23,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "--padding_44_47--"
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "--padding_16_38--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 15,
+                      "field_width": 3,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "--padding_49_63--"
+                      "lsb_mem_word_offset": 40,
+                      "field_name": "--padding_40_42--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 45,
+                      "field_name": "--padding_45_46--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "--padding_48_63--"
                     }
                   ]
                 }
               ],
-              "action_handle": 536870999
+              "action_handle": 536870916
             },
             {
               "memory_word_width": 128,
@@ -130379,1079 +98845,100 @@
                   ]
                 }
               ],
-              "action_handle": 536871006
+              "action_handle": 536870917
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870919
             }
           ],
           "memory_resource_allocation": {
             "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 81 ], "vpns": [ 0 ] } ]
+            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
           }
         }
       ],
       "actions": [
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
-          "handle": 536870990,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_icmp",
+          "handle": 536870918,
           "p4_parameters": []
         },
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
-          "handle": 536870991,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_tcp",
+          "handle": 536870916,
           "p4_parameters": []
         },
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
-          "handle": 536871000,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_udp",
+          "handle": 536870917,
           "p4_parameters": []
         },
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
-          "handle": 536871001,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_unknown",
+          "handle": 536870919,
           "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
-          "handle": 536871002,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
-          "handle": 536871003,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
-          "handle": 536871004,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
-          "handle": 536871005,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
-          "handle": 536870992,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
-          "handle": 536870993,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
-          "handle": 536870994,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
-          "handle": 536870995,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
-          "handle": 536870996,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
-          "handle": 536870997,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
-          "handle": 536870998,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
-          "handle": 536870999,
-          "p4_parameters": []
-        },
-        { "name": "NoAction", "handle": 536871006, "p4_parameters": [] }
+        }
       ],
       "static_entries": [],
       "how_referenced": "direct"
     },
     {
-      "direction": "ingress",
-      "handle": 16777238,
-      "name": "tbl_act_15",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 4,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 0,
-            "has_attached_gateway": true,
-            "default_next_table": 65,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 1 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 4,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_15",
-                  "action_handle": 536870942,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 65,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "FabricIngress.spgw_ingress.flexible_pdr_lookup",
-                      "next_table_logical_id": 1,
-                      "next_table_stage_no": 4
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_15",
-          "handle": 536870942,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ipv4_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870942,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_15",
-      "handle": 1879048210,
-      "name": "cond-11",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 112, "true": 64 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "", "true": "tbl_act_15" },
-          "logical_table_id": 0,
-          "stage_number": 4,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "spgw_ingress_hasReturned", "start_bit": 1, "bit_width": 1 } ],
-      "condition": "(!spgw_ingress_hasReturned)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777239,
-      "name": "FabricIngress.spgw_ingress.flexible_pdr_lookup",
+      "direction": "egress",
+      "handle": 16777245,
+      "name": "FabricEgress.process_int_main.process_int_source.tb_int_source",
       "table_type": "match",
       "size": 512,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 4,
+            "stage_number": 1,
             "size": 512,
             "stage_table_type": "ternary_match",
             "logical_table_id": 1,
             "has_attached_gateway": true,
-            "default_next_table": 80,
+            "default_next_table": 34,
             "pack_format": [
               {
-                "table_word_width": 188,
+                "table_word_width": 141,
                 "memory_word_width": 47,
                 "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 4,
+                "number_memory_units_per_table_word": 3,
                 "entries": [
                   {
                     "entry_number": 0,
@@ -131520,62 +99007,26 @@
                         "field_width": 2
                       },
                       {
-                        "field_name": "--tcam_payload_3--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_3--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "ipv4_dst",
+                        "field_name": "ipv4_src",
                         "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "ip_proto",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 8
                       },
                       {
                         "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
                         "source": "spec",
-                        "start_bit": 24,
+                        "start_bit": 8,
                         "field_width": 8
                       },
                       {
-                        "field_name": "tunnel_ipv4_dst",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "tunnel_ipv4_dst",
-                        "lsb_mem_word_offset": 1,
+                        "field_name": "ipv4_src",
+                        "lsb_mem_word_offset": 17,
                         "lsb_mem_word_idx": 2,
                         "msb_mem_word_idx": 2,
                         "source": "spec",
@@ -131583,62 +99034,17 @@
                         "field_width": 16
                       },
                       {
-                        "field_name": "teid",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "tunnel_ipv4_dst",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "teid",
+                        "field_name": "ipv4_dst",
                         "lsb_mem_word_offset": 33,
                         "lsb_mem_word_idx": 2,
                         "msb_mem_word_idx": 2,
                         "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "teid",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 24,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
                         "start_bit": 0,
                         "field_width": 8
                       },
                       {
-                        "field_name": "teid",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 25,
+                        "field_name": "ipv4_dst",
+                        "lsb_mem_word_offset": 1,
                         "lsb_mem_word_idx": 1,
                         "msb_mem_word_idx": 1,
                         "source": "spec",
@@ -131646,76 +99052,58 @@
                         "field_width": 16
                       },
                       {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "l4_dport",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 16
-                      },
-                      {
                         "field_name": "l4_sport",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 16
                       },
                       {
-                        "field_name": "spgw_direction",
-                        "lsb_mem_word_offset": 41,
+                        "field_name": "l4_dport",
+                        "lsb_mem_word_offset": 33,
                         "lsb_mem_word_idx": 1,
                         "msb_mem_word_idx": 1,
                         "source": "spec",
                         "start_bit": 0,
-                        "field_width": 2
+                        "field_width": 8
                       },
                       {
-                        "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 41,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
+                        "field_name": "l4_dport",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
                         "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 4
+                        "start_bit": 8,
+                        "field_width": 8
                       },
                       {
-                        "field_name": "ipv4_dst",
+                        "field_name": "ipv4_src",
                         "lsb_mem_word_offset": 41,
                         "lsb_mem_word_idx": 2,
                         "msb_mem_word_idx": 2,
                         "source": "spec",
-                        "start_bit": 20,
+                        "start_bit": 8,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "ipv4_src",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 12,
                         "field_width": 4
                       },
                       {
                         "field_name": "--unused--",
-                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_offset": 9,
                         "lsb_mem_word_idx": 0,
                         "msb_mem_word_idx": 0,
                         "source": "zero",
                         "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 43,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 2
+                        "field_width": 34
                       }
                     ]
                   }
@@ -131724,12 +99112,12 @@
             ],
             "memory_resource_allocation": {
               "memory_type": "tcam",
-              "memory_units_and_vpns": [ { "memory_units": [ 0, 1, 2, 3 ], "vpns": [ 0 ] } ],
-              "spare_bank_memory_unit": 3
+              "memory_units_and_vpns": [ { "memory_units": [ 0, 1, 2 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 2
             },
             "result_physical_buses": [ 0 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 4,
+              "stage_number": 1,
               "stage_table_type": "ternary_indirection",
               "size": 32768,
               "pack_format": [
@@ -132549,18 +99937,35 @@
               },
               "action_format": [
                 {
-                  "action_name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-                  "action_handle": 536870937,
+                  "action_name": "nop",
+                  "action_handle": 536870982,
                   "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 80,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
+                  "next_table": 4294967295,
+                  "next_table_full": 34,
+                  "vliw_instruction": -1,
+                  "vliw_instruction_full": 64,
                   "next_tables": [
                     {
-                      "next_table_name": "FabricIngress.spgw_ingress.far_lookup",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 5
+                      "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+                      "next_table_logical_id": 2,
+                      "next_table_stage_no": 2
+                    }
+                  ],
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "FabricEgress.process_int_main.process_int_source.int_source_dscp",
+                  "action_handle": 536870981,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 34,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 65,
+                  "next_tables": [
+                    {
+                      "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+                      "next_table_logical_id": 2,
+                      "next_table_stage_no": 2
                     }
                   ],
                   "immediate_fields": []
@@ -132574,53 +99979,227 @@
       "action_data_table_refs": [
         {
           "how_referenced": "direct",
-          "handle": 33554436,
-          "name": "FabricIngress.spgw_ingress.flexible_pdr_lookup$action"
+          "handle": 33554443,
+          "name": "FabricEgress.process_int_main.process_int_source.tb_int_source$action"
         }
       ],
       "selection_table_refs": [],
       "meter_table_refs": [],
-      "statistics_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108877,
+          "name": "FabricEgress.process_int_main.process_int_source.counter_int_source"
+        }
+      ],
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-          "handle": 536870937,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ctr_id" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "ctr_id" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_id" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "far_id" }
-            }
-          ],
+          "name": "nop",
+          "handle": 536870982,
+          "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
           "is_compiler_added_action": false,
           "constant_default_action": false,
           "disallowed_as_default_action_reason": "",
-          "p4_parameters": [
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_source.int_source_dscp",
+          "handle": 536870981,
+          "primitives": [
             {
-              "name": "ctr_id",
-              "start_bit": 0,
-              "position": 0,
-              "default_value": "0x0",
-              "bit_width": 32
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricEgress.process_int_main.process_int_source.counter_int_source"
+              }
             },
             {
-              "name": "far_id",
-              "start_bit": 32,
-              "position": 1,
-              "default_value": "0x0",
-              "bit_width": 32
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.intl4_shim.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.intl4_shim.int_type" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.intl4_shim.len_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "4" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_header.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.ver" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.rep" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.c" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.e" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.rsvd1" },
+              "dst_mask": { "type": "immediate", "name": "31" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.ins_cnt" },
+              "dst_mask": { "type": "immediate", "name": "31" },
+              "src1": { "type": "action_param", "name": "ins_cnt" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.max_hop_cnt" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "action_param", "name": "max_hop" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.total_hop_cnt" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_0003" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "action_param", "name": "ins_mask0003" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_0407" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "action_param", "name": "ins_mask0407" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_0811" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_1215" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.intl4_tail.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.intl4_tail.next_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.intl4_tail.dest_port" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.intl4_tail.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.ipv4.dscp" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "src2": { "type": "immediate", "name": "16" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.udp.len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.udp.len" },
+              "src2": { "type": "immediate", "name": "16" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "immediate", "name": "0x1" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            { "name": "max_hop", "start_bit": 0, "position": 0, "bit_width": 8 },
+            { "name": "ins_cnt", "start_bit": 8, "position": 1, "bit_width": 5 },
+            {
+              "name": "ins_mask0003",
+              "start_bit": 13,
+              "position": 2,
+              "bit_width": 4
+            },
+            {
+              "name": "ins_mask0407",
+              "start_bit": 17,
+              "position": 3,
+              "bit_width": 4
             }
           ],
           "override_meter_addr": false,
@@ -132635,7 +100214,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870937,
+      "default_action_handle": 536870982,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -132643,48 +100222,12 @@
       "uses_range": false,
       "match_key_fields": [
         {
-          "name": "spgw_direction",
-          "global_name": "fabric_metadata.spgw.direction",
-          "start_bit": 0,
-          "bit_width": 2,
-          "bit_width_full": 2,
-          "position": 0,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "fabric_metadata.spgw",
-          "field_name": "direction"
-        },
-        {
-          "name": "tunnel_ipv4_dst",
-          "global_name": "fabric_metadata.spgw.tunnel_dst_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 1,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "fabric_metadata.spgw",
-          "field_name": "tunnel_dst_addr"
-        },
-        {
-          "name": "teid",
-          "global_name": "fabric_metadata.spgw.teid",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 2,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "fabric_metadata.spgw",
-          "field_name": "teid"
-        },
-        {
           "name": "ipv4_src",
           "global_name": "hdr.ipv4.src_addr",
           "start_bit": 0,
           "bit_width": 32,
           "bit_width_full": 32,
-          "position": 3,
+          "position": 0,
           "match_type": "ternary",
           "is_valid": false,
           "instance_name": "hdr.ipv4",
@@ -132696,31 +100239,19 @@
           "start_bit": 0,
           "bit_width": 32,
           "bit_width_full": 32,
-          "position": 4,
+          "position": 1,
           "match_type": "ternary",
           "is_valid": false,
           "instance_name": "hdr.ipv4",
           "field_name": "dst_addr"
         },
         {
-          "name": "ip_proto",
-          "global_name": "hdr.ipv4.protocol",
-          "start_bit": 0,
-          "bit_width": 8,
-          "bit_width_full": 8,
-          "position": 5,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "hdr.ipv4",
-          "field_name": "protocol"
-        },
-        {
           "name": "l4_sport",
           "global_name": "fabric_metadata.l4_sport",
           "start_bit": 0,
           "bit_width": 16,
           "bit_width_full": 16,
-          "position": 6,
+          "position": 2,
           "match_type": "ternary",
           "is_valid": false,
           "instance_name": "fabric_metadata",
@@ -132732,7 +100263,7 @@
           "start_bit": 0,
           "bit_width": 16,
           "bit_width_full": 16,
-          "position": 7,
+          "position": 3,
           "match_type": "ternary",
           "is_valid": false,
           "instance_name": "fabric_metadata",
@@ -132743,45 +100274,80 @@
       "static_entries": []
     },
     {
-      "direction": "ingress",
-      "attached_to": "FabricIngress.spgw_ingress.flexible_pdr_lookup",
-      "handle": 1879048211,
-      "name": "cond-12",
+      "direction": "egress",
+      "attached_to": "FabricEgress.process_int_main.process_int_source.tb_int_source",
+      "handle": 1879048200,
+      "name": "cond-26",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 80, "true": 65 },
-          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 34, "true": 17 },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
-            "false": "FabricIngress.spgw_ingress.far_lookup",
-            "true": "FabricIngress.spgw_ingress.flexible_pdr_lookup"
+            "false": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+            "true": "FabricEgress.process_int_main.process_int_source.tb_int_source"
           },
           "logical_table_id": 1,
-          "stage_number": 4,
+          "stage_number": 1,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
       "condition_fields": [
         {
-          "name": "fabric_metadata.spgw.pdr_hit",
-          "start_bit": 3,
+          "name": "fabric_metadata.int_meta.source",
+          "start_bit": 6,
           "bit_width": 1
         }
       ],
-      "condition": "(fabric_metadata.spgw.pdr_hit == 0)",
+      "condition": "(fabric_metadata.int_meta.source == 1)",
       "size": 0
     },
     {
-      "direction": "ingress",
-      "handle": 33554436,
-      "name": "FabricIngress.spgw_ingress.flexible_pdr_lookup$action",
+      "direction": "egress",
+      "handle": 67108877,
+      "name": "FabricEgress.process_int_main.process_int_source.counter_int_source",
+      "table_type": "statistics",
+      "size": 1024,
+      "stage_tables": [
+        {
+          "stage_number": 1,
+          "size": 1024,
+          "stage_table_type": "statistics",
+          "logical_table_id": 1,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 78 ], "vpns": [ 0 ] } ],
+            "spare_bank_memory_unit": 79
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 64,
+      "packet_counter_resolution": 64,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "egress",
+      "handle": 33554443,
+      "name": "FabricEgress.process_int_main.process_int_source.tb_int_source$action",
       "table_type": "action",
       "size": 2048,
       "stage_tables": [
         {
-          "stage_number": 4,
+          "stage_number": 1,
           "size": 2048,
           "stage_table_type": "action_data",
           "logical_table_id": 1,
@@ -132796,34 +100362,153 @@
                   "entry_number": 1,
                   "fields": [
                     {
-                      "start_bit": 8,
-                      "field_width": 24,
+                      "start_bit": 0,
+                      "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 64,
-                      "field_name": "far_id"
+                      "field_name": "max_hop"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 8,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 92,
+                      "field_name": "ins_mask0003"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 88,
-                      "field_name": "far_id"
+                      "field_name": "ins_mask0407"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 32,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 110,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 108,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 107,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 106,
+                      "field_name": "$constant7"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 5 } ],
+                      "lsb_mem_word_offset": 101,
+                      "field_name": "$constant8"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 96,
-                      "field_name": "ctr_id"
+                      "field_name": "ins_cnt"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 112,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 112,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 72,
+                      "field_name": "--padding_8_15--"
                     }
                   ]
                 },
@@ -132831,2934 +100516,158 @@
                   "entry_number": 0,
                   "fields": [
                     {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "far_id"
-                    },
-                    {
                       "start_bit": 0,
                       "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 24,
-                      "field_name": "far_id"
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "max_hop"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 32,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 28,
+                      "field_name": "ins_mask0003"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "ins_mask0407"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 46,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 44,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 43,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 42,
+                      "field_name": "$constant7"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 5 } ],
+                      "lsb_mem_word_offset": 37,
+                      "field_name": "$constant8"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 32,
-                      "field_name": "ctr_id"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870937
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-          "handle": 536870937,
-          "p4_parameters": [
-            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
-            {
-              "name": "far_id",
-              "start_bit": 32,
-              "position": 1,
-              "bit_width": 32
-            }
-          ]
-        }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "egress",
-      "handle": 16777261,
-      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-      "table_type": "match",
-      "size": 1024,
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554445,
-          "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407$action"
-        }
-      ],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "default_action_handle": 536871023,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "hdr.int_header.instruction_mask_0407",
-          "start_bit": 0,
-          "bit_width": 4,
-          "bit_width_full": 4,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "hdr.int_header",
-          "field_name": "instruction_mask_0407"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 4,
-            "size": 1024,
-            "stage_table_type": "hash_match",
-            "logical_table_id": 2,
-            "has_attached_gateway": false,
-            "default_next_table": 255,
-            "hash_functions": [
-              {
-                "hash_bits": [
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "hdr.int_header.instruction_mask_0407",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "hdr.int_header.instruction_mask_0407",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "hdr.int_header.instruction_mask_0407",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "hdr.int_header.instruction_mask_0407",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 0
-                  }
-                ],
-                "hash_function_number": 0,
-                "ghost_bit_to_hash_bit": [ [ 0 ], [ 1 ], [ 2 ], [ 3 ] ],
-                "ghost_bit_info": [
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0407",
-                    "bit_in_match_spec": 0
-                  },
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0407",
-                    "bit_in_match_spec": 1
-                  },
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0407",
-                    "bit_in_match_spec": 2
-                  },
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0407",
-                    "bit_in_match_spec": 3
-                  }
-                ]
-              }
-            ],
-            "action_format": [
-              {
-                "action_name": "NoAction",
-                "action_handle": 536871023,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 4294967295,
-                "next_table_full": 82,
-                "vliw_instruction": -1,
-                "vliw_instruction_full": 67,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
-                "action_handle": 536871007,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 0,
-                "vliw_instruction_full": 64,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
-                "action_handle": 536871008,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 1,
-                "vliw_instruction_full": 65,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
-                "action_handle": 536871009,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 2,
-                "vliw_instruction_full": 66,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
-                "action_handle": 536871010,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 4,
-                "vliw_instruction_full": 68,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
-                "action_handle": 536871011,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 6,
-                "vliw_instruction_full": 70,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
-                "action_handle": 536871012,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 8,
-                "vliw_instruction_full": 72,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
-                "action_handle": 536871013,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 10,
-                "vliw_instruction_full": 74,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
-                "action_handle": 536871014,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 12,
-                "vliw_instruction_full": 76,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
-                "action_handle": 536871015,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 14,
-                "vliw_instruction_full": 78,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
-                "action_handle": 536871016,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 16,
-                "vliw_instruction_full": 80,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
-                "action_handle": 536871017,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 18,
-                "vliw_instruction_full": 82,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
-                "action_handle": 536871018,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 20,
-                "vliw_instruction_full": 84,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
-                "action_handle": 536871019,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 22,
-                "vliw_instruction_full": 86,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
-                "action_handle": 536871020,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 24,
-                "vliw_instruction_full": 88,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
-                "action_handle": 536871021,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 26,
-                "vliw_instruction_full": 90,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
-                "action_handle": 536871022,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 28,
-                "vliw_instruction_full": 92,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_16",
-                    "param_type": "constant",
-                    "const_value": 16,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              }
-            ],
-            "result_physical_buses": [ 14 ],
-            "pack_format": [
-              {
-                "memory_word_width": 128,
-                "table_word_width": 128,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1
-              }
-            ],
-            "memory_resource_allocation": null,
-            "stash_allocation": {
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 16,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 6,
-                          "field_name": "immediate",
-                          "match_mode": "unused"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 6,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action",
-                          "match_mode": "unused"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "num_stash_entries": 2,
-              "stash_entries": [
-                [
-                  {
-                    "stash_entry_id": 28,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ],
-                [
-                  {
-                    "stash_entry_id": 29,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ]
-              ]
-            },
-            "ways": [
-              {
-                "stage_number": 4,
-                "way_number": 0,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 6,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 16,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 6,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 90,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 22,
-                            "field_name": "--padding_22_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 0,
-                  "hash_entry_bit_hi": 9,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
-                }
-              }
-            ]
-          }
-        ],
-        "match_type": "exact",
-        "uses_dynamic_key_masks": false
-      },
-      "actions": [
-        {
-          "name": "NoAction",
-          "handle": 536871023,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
-          "handle": 536871007,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
-          "handle": 536871008,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
-          "handle": 536871009,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
-          "handle": 536871010,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
-          "handle": 536871011,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
-          "handle": 536871012,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
-          "handle": 536871013,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
-          "handle": 536871014,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
-          "handle": 536871015,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
-          "handle": 536871016,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
-          "handle": 536871017,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
-          "handle": 536871018,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
-          "handle": 536871019,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
-          "handle": 536871020,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
-          "handle": 536871021,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
-          "handle": 536871022,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "4" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "16" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": [
-        {
-          "priority": 0,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x0"
-            }
-          ],
-          "action_handle": 536871007,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 1,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x1"
-            }
-          ],
-          "action_handle": 536871008,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 2,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x2"
-            }
-          ],
-          "action_handle": 536871009,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 3,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x3"
-            }
-          ],
-          "action_handle": 536871010,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 4,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x4"
-            }
-          ],
-          "action_handle": 536871011,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 5,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x5"
-            }
-          ],
-          "action_handle": 536871012,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 6,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x6"
-            }
-          ],
-          "action_handle": 536871013,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 7,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x7"
-            }
-          ],
-          "action_handle": 536871014,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 8,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x8"
-            }
-          ],
-          "action_handle": 536871015,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 9,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x9"
-            }
-          ],
-          "action_handle": 536871016,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 10,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0xa"
-            }
-          ],
-          "action_handle": 536871017,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 11,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0xb"
-            }
-          ],
-          "action_handle": 536871018,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 12,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0xc"
-            }
-          ],
-          "action_handle": 536871019,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 13,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0xd"
-            }
-          ],
-          "action_handle": 536871020,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 14,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0xe"
-            }
-          ],
-          "action_handle": 536871021,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 15,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0xf"
-            }
-          ],
-          "action_handle": 536871022,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        }
-      ]
-    },
-    {
-      "direction": "egress",
-      "handle": 33554445,
-      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407$action",
-      "table_type": "action",
-      "size": 2048,
-      "stage_tables": [
-        {
-          "stage_number": 4,
-          "size": 2048,
-          "stage_table_type": "action_data",
-          "logical_table_id": 2,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871007
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871008
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "$constant1"
+                      "field_name": "ins_cnt"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "--padding_14_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "--padding_18_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "--padding_46_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "--padding_50_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "--padding_14_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "--padding_18_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "--padding_46_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "--padding_50_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871017
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "--padding_14_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "--padding_46_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "--padding_14_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "--padding_46_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871018
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
                       "field_width": 16,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 64,
+                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 48,
                       "field_name": "$constant0"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
                       "field_width": 16,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "$constant0"
+                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "$constant1"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 48,
+                      "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_63--"
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "--padding_8_15--"
                     }
                   ]
                 }
               ],
-              "action_handle": 536871019
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "--padding_15_17--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "--padding_47_49--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "--padding_15_17--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "--padding_47_49--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871020
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "--padding_18_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "--padding_50_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "--padding_18_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "--padding_50_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871021
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "$constant6"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "$constant6"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871022
+              "action_handle": 536870981
             },
             {
               "memory_word_width": 128,
@@ -135797,1035 +100706,7 @@
                   ]
                 }
               ],
-              "action_handle": 536871009
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871010
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871011
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_13--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "--padding_15_17--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_19_45--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "--padding_47_49--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_13--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "--padding_15_17--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_19_45--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "--padding_47_49--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871012
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_13--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 28,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "--padding_18_45--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "--padding_50_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_13--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 28,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "--padding_18_45--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "--padding_50_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871013
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_13--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_19_45--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_13--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_19_45--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871014
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871015
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "--padding_14_17--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "--padding_46_49--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "--padding_14_17--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "--padding_46_49--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871016
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871023
+              "action_handle": 536870982
             }
           ],
           "memory_resource_allocation": {
@@ -136836,295 +100717,48 @@
       ],
       "actions": [
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
-          "handle": 536871007,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
-          "handle": 536871008,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
-          "handle": 536871017,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
-          "handle": 536871018,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
-          "handle": 536871019,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
-          "handle": 536871020,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
-          "handle": 536871021,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
-          "handle": 536871022,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
-          "handle": 536871009,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
-          "handle": 536871010,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
-          "handle": 536871011,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
-          "handle": 536871012,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
-          "handle": 536871013,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
-          "handle": 536871014,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
-          "handle": 536871015,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
-          "handle": 536871016,
-          "p4_parameters": []
-        },
-        { "name": "NoAction", "handle": 536871023, "p4_parameters": [] }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "ingress",
-      "handle": 33554437,
-      "name": "FabricIngress.spgw_ingress.far_lookup$action",
-      "table_type": "action",
-      "size": 4096,
-      "stage_tables": [
-        {
-          "stage_number": 5,
-          "size": 4096,
-          "stage_table_type": "action_data",
-          "logical_table_id": 0,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "drop"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 127,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "--padding_1_127--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870939
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "drop"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "teid"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "tunnel_src_addr"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "tunnel_src_addr"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "tunnel_dst_addr"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "tunnel_dst_addr"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 31,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "--padding_1_31--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870940
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [
-              { "memory_units": [ 90 ], "vpns": [ 0 ] },
-              { "memory_units": [ 91 ], "vpns": [ 1 ] },
-              { "memory_units": [ 92 ], "vpns": [ 2 ] },
-              { "memory_units": [ 93 ], "vpns": [ 3 ] }
-            ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricIngress.spgw_ingress.load_normal_far_attributes",
-          "handle": 536870939,
+          "name": "FabricEgress.process_int_main.process_int_source.int_source_dscp",
+          "handle": 536870981,
           "p4_parameters": [
-            { "name": "drop", "start_bit": 0, "position": 0, "bit_width": 1 },
+            { "name": "max_hop", "start_bit": 0, "position": 0, "bit_width": 8 },
+            { "name": "ins_cnt", "start_bit": 8, "position": 1, "bit_width": 5 },
             {
-              "name": "notify_cp",
-              "start_bit": 1,
-              "position": 1,
-              "bit_width": 1
-            }
-          ]
-        },
-        {
-          "name": "FabricIngress.spgw_ingress.load_tunnel_far_attributes",
-          "handle": 536870940,
-          "p4_parameters": [
-            { "name": "drop", "start_bit": 0, "position": 0, "bit_width": 1 },
-            {
-              "name": "notify_cp",
-              "start_bit": 1,
-              "position": 1,
-              "bit_width": 1
-            },
-            {
-              "name": "tunnel_src_addr",
-              "start_bit": 2,
+              "name": "ins_mask0003",
+              "start_bit": 13,
               "position": 2,
-              "bit_width": 32
+              "bit_width": 4
             },
             {
-              "name": "tunnel_dst_addr",
-              "start_bit": 34,
+              "name": "ins_mask0407",
+              "start_bit": 17,
               "position": 3,
-              "bit_width": 32
-            },
-            { "name": "teid", "start_bit": 66, "position": 4, "bit_width": 32 }
+              "bit_width": 4
+            }
           ]
-        }
+        },
+        { "name": "nop", "handle": 536870982, "p4_parameters": [] }
       ],
       "static_entries": [],
       "how_referenced": "direct"
     },
     {
       "direction": "ingress",
-      "handle": 16777240,
-      "name": "FabricIngress.spgw_ingress.far_lookup",
+      "handle": 16777220,
+      "name": "FabricIngress.spgw.downlink_pdrs",
       "table_type": "match",
-      "size": 4096,
+      "size": 1024,
       "action_data_table_refs": [
         {
           "how_referenced": "direct",
-          "handle": 33554437,
-          "name": "FabricIngress.spgw_ingress.far_lookup$action"
+          "handle": 33554435,
+          "name": "FabricIngress.spgw.downlink_pdrs$action"
         }
       ],
       "selection_table_refs": [],
       "meter_table_refs": [],
       "statistics_table_refs": [],
       "stateful_table_refs": [],
-      "default_action_handle": 536870939,
+      "default_action_handle": 536870923,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -137132,27 +100766,27 @@
       "uses_range": false,
       "match_key_fields": [
         {
-          "name": "far_id",
-          "global_name": "fabric_metadata.spgw.far_id",
+          "name": "ue_addr",
+          "global_name": "hdr.ipv4.dst_addr",
           "start_bit": 0,
           "bit_width": 32,
           "bit_width_full": 32,
           "position": 0,
           "match_type": "exact",
           "is_valid": false,
-          "instance_name": "fabric_metadata.spgw",
-          "field_name": "far_id"
+          "instance_name": "hdr.ipv4",
+          "field_name": "dst_addr"
         }
       ],
       "ap_bind_indirect_res_to_match": [],
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 5,
+            "stage_number": 2,
             "size": 4096,
             "stage_table_type": "hash_match",
             "logical_table_id": 0,
-            "has_attached_gateway": false,
+            "has_attached_gateway": true,
             "default_next_table": 255,
             "hash_functions": [
               {
@@ -137160,82 +100794,76 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 8,
-                        "field_name": "far_id",
+                        "field_bit": 0,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 0
                       },
                       {
                         "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 2
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
                       },
                       {
                         "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 0,
@@ -137244,124 +100872,166 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "far_id",
+                        "field_bit": 1,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 1
                       },
                       {
                         "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 3
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 6
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 16,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 8
+                        "hash_match_group_bit": 16
                       },
                       {
                         "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 6,
-                        "field_name": "far_id",
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 2,
@@ -137370,94 +101040,70 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_bit": 3,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 7,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 3,
@@ -137466,154 +101112,160 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_bit": 4,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 2
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 26
                       },
                       {
-                        "field_bit": 0,
-                        "field_name": "far_id",
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 34
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 4,
-                    "seed": 1
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
+                        "field_bit": 5,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 1,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 35
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 5,
@@ -137622,238 +101274,256 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_bit": 6,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
                         "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "far_id",
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 37
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
-                    "hash_bit": 7,
+                    "hash_bit": 6,
                     "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_bit": 7,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 2
+                        "hash_match_group_bit": 7
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 4,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 38
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 8,
@@ -137862,70 +101532,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_bit": 9,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 2
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 3
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "far_id",
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 4
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
                       },
                       {
                         "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 9,
@@ -137934,88 +101598,64 @@
                   {
                     "bits_to_xor": [
                       {
+                        "field_bit": 9,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
                         "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
                       },
                       {
                         "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
+                        "hash_match_group_bit": 29
                       }
                     ],
                     "hash_bit": 10,
@@ -138024,76 +101664,58 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 8,
-                        "field_name": "far_id",
+                        "field_bit": 0,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 0
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 4
+                        "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 7
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
                       }
                     ],
                     "hash_bit": 11,
@@ -138102,70 +101724,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "far_id",
+                        "field_bit": 1,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 1
                       },
                       {
                         "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
                       },
                       {
                         "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 12,
@@ -138174,220 +101790,202 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 13,
-                        "field_name": "far_id",
+                        "field_bit": 2,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 5
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 6
+                        "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 7
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
                         "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 29
                       },
                       {
                         "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 13,
-                    "seed": 1
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_bit": 3,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 13,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 5
+                        "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
                         "field_bit": 16,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 8
+                        "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 0,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 34
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 14,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
                       }
                     ],
                     "hash_bit": 15,
@@ -138396,82 +101994,70 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
+                        "field_bit": 5,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 1,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 35
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 16,
@@ -138480,148 +102066,124 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_bit": 6,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 37
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 18,
@@ -138630,268 +102192,328 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
+                        "field_bit": 8,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 8
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
                         "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 3
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 4,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 20,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
+                        "hash_match_group_bit": 20
                       },
                       {
                         "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 5,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 39
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
-                    "hash_bit": 21,
+                    "hash_bit": 19,
                     "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
                         "field_bit": 8,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 13,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 5
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 6
+                        "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 7
+                        "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 20,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 21,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 22,
@@ -138900,76 +102522,52 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "far_id",
+                        "field_bit": 1,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 1
                       },
                       {
                         "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 24
                       }
                     ],
                     "hash_bit": 23,
@@ -138978,46 +102576,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_bit": 2,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 3
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
                         "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 6,
-                        "field_name": "far_id",
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 24,
@@ -139026,64 +102642,76 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_bit": 3,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 4
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 6
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 16,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 8
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
                       },
                       {
                         "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 30
                       },
                       {
-                        "field_bit": 7,
-                        "field_name": "far_id",
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 25,
@@ -139092,148 +102720,184 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 12,
-                        "field_name": "far_id",
+                        "field_bit": 4,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 34
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
                         "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 26,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 1,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 35
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 27,
@@ -139242,94 +102906,94 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_bit": 6,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 6
                       },
                       {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
                         "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
                       },
                       {
                         "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 30
                       },
                       {
                         "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 28,
@@ -139338,94 +103002,70 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
+                        "field_bit": 7,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 7
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
                       },
                       {
                         "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
                       },
                       {
                         "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 30
                       },
                       {
                         "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 37
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 29,
@@ -139434,76 +103074,82 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
+                        "field_bit": 7,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 7
                       },
                       {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
                         "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 37
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 30,
@@ -139512,298 +103158,322 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 31,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
+                        "field_bit": 8,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 8
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
                         "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
                       }
                     ],
-                    "hash_bit": 33,
-                    "seed": 1
+                    "hash_bit": 31,
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
                         "field_bit": 9,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 1
+                        "hash_match_group_bit": 9
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 2
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 15,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 7
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 34,
@@ -139812,352 +103482,304 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      }
-                    ],
-                    "hash_bit": 35,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      }
-                    ],
-                    "hash_bit": 36,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 34
-                      }
-                    ],
-                    "hash_bit": 37,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_bit": 2,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 12,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 4
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 13,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 5
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 1,
-                        "field_name": "far_id",
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 35
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 35,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 36,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      }
+                    ],
+                    "hash_bit": 37,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 38,
@@ -140166,70 +103788,82 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_bit": 6,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 2,
-                        "field_name": "far_id",
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 36
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
                       }
                     ],
                     "hash_bit": 39,
@@ -140238,68 +103872,76 @@
                 ],
                 "hash_function_number": 0,
                 "ghost_bit_to_hash_bit": [
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ],
+                  [ 2, 13, 24, 35 ],
+                  [ 3, 14, 25, 36 ],
                   [ 4, 15, 26, 37 ],
                   [ 5, 16, 27, 38 ],
                   [ 6, 17, 28, 39 ],
                   [ 7, 18, 29, 30 ],
                   [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ],
-                  [ 2, 13, 24, 35 ],
-                  [ 3, 14, 25, 36 ],
-                  [ 0, 11, 22, 33 ],
-                  [ 1, 12, 23, 34 ]
+                  [ 9, 10, 21, 32 ]
                 ],
                 "ghost_bit_info": [
-                  { "field_name": "far_id", "bit_in_match_spec": 0 },
-                  { "field_name": "far_id", "bit_in_match_spec": 1 },
-                  { "field_name": "far_id", "bit_in_match_spec": 2 },
-                  { "field_name": "far_id", "bit_in_match_spec": 3 },
-                  { "field_name": "far_id", "bit_in_match_spec": 4 },
-                  { "field_name": "far_id", "bit_in_match_spec": 5 },
-                  { "field_name": "far_id", "bit_in_match_spec": 6 },
-                  { "field_name": "far_id", "bit_in_match_spec": 7 },
-                  { "field_name": "far_id", "bit_in_match_spec": 8 },
-                  { "field_name": "far_id", "bit_in_match_spec": 9 }
+                  { "field_name": "ue_addr", "bit_in_match_spec": 0 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 1 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 2 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 3 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 4 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 5 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 6 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 7 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 8 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 9 }
                 ]
               }
             ],
             "action_format": [
               {
-                "action_name": "FabricIngress.spgw_ingress.load_normal_far_attributes",
-                "action_handle": 536870939,
+                "action_name": "NoAction",
+                "action_handle": 536870923,
                 "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 81,
-                "vliw_instruction": 0,
-                "vliw_instruction_full": 65,
+                "next_table": 4294967295,
+                "next_table_full": 48,
+                "vliw_instruction": -1,
+                "vliw_instruction_full": 64,
                 "next_tables": [
                   {
-                    "next_table_name": "tbl_act_13",
-                    "next_table_logical_id": 1,
-                    "next_table_stage_no": 5
+                    "next_table_name": "FabricIngress.spgw.decap_gtpu.decap_gtpu",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 3
                   }
                 ],
                 "immediate_fields": []
               },
               {
-                "action_name": "FabricIngress.spgw_ingress.load_tunnel_far_attributes",
-                "action_handle": 536870940,
+                "action_name": "FabricIngress.spgw.load_pdr",
+                "action_handle": 536870922,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
-                "next_table_full": 81,
+                "next_table_full": 48,
                 "vliw_instruction": 1,
-                "vliw_instruction_full": 66,
+                "vliw_instruction_full": 65,
                 "next_tables": [
                   {
-                    "next_table_name": "tbl_act_13",
-                    "next_table_logical_id": 1,
-                    "next_table_stage_no": 5
+                    "next_table_name": "FabricIngress.spgw.decap_gtpu.decap_gtpu",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 3
                   }
                 ],
-                "immediate_fields": []
+                "immediate_fields": [
+                  {
+                    "param_name": "needs_gtpu_decap",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 1
+                  }
+                ]
               }
             ],
-            "result_physical_buses": [ 12 ],
+            "result_physical_buses": [ 15 ],
             "pack_format": [
               {
                 "memory_word_width": 128,
@@ -140321,7 +103963,18 @@
                       "entry_number": 0,
                       "fields": [
                         {
-                          "field_name": "far_id",
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "immediate",
+                          "match_mode": "unused"
+                        },
+                        {
+                          "field_name": "ue_addr",
                           "source": "spec",
                           "lsb_mem_word_offset": 50,
                           "start_bit": 10,
@@ -140333,7 +103986,7 @@
                           "field_width": 6
                         },
                         {
-                          "field_name": "far_id",
+                          "field_name": "ue_addr",
                           "source": "spec",
                           "lsb_mem_word_offset": 32,
                           "start_bit": 16,
@@ -140345,7 +103998,7 @@
                           "field_width": 8
                         },
                         {
-                          "field_name": "far_id",
+                          "field_name": "ue_addr",
                           "source": "spec",
                           "lsb_mem_word_offset": 40,
                           "start_bit": 24,
@@ -140376,17 +104029,17 @@
               "stash_entries": [
                 [
                   {
-                    "stash_entry_id": 24,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
+                    "stash_entry_id": 30,
+                    "stash_match_data_select": 1,
+                    "stash_hashbank_select": 1,
                     "hash_function_id": 0
                   }
                 ],
                 [
                   {
-                    "stash_entry_id": 25,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
+                    "stash_entry_id": 31,
+                    "stash_match_data_select": 1,
+                    "stash_hashbank_select": 1,
                     "hash_function_id": 0
                   }
                 ]
@@ -140394,7 +104047,7 @@
             },
             "ways": [
               {
-                "stage_number": 5,
+                "stage_number": 2,
                 "way_number": 0,
                 "stage_table_type": "hash_way",
                 "size": 1024,
@@ -140421,6 +104074,17 @@
                           },
                           {
                             "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
                             "field_width": 4,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
@@ -140431,7 +104095,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 50,
                             "start_bit": 10,
@@ -140443,7 +104107,7 @@
                             "field_width": 6
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 32,
                             "start_bit": 16,
@@ -140455,7 +104119,7 @@
                             "field_width": 8
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 40,
                             "start_bit": 24,
@@ -140468,13 +104132,13 @@
                           },
                           {
                             "start_bit": 0,
-                            "field_width": 31,
+                            "field_width": 30,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
                             "source": "zero",
                             "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "--padding_1_31--",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
                             "match_mode": "unused"
                           },
                           {
@@ -140523,11 +104187,11 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 74 ], "vpns": [ 0 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
                 }
               },
               {
-                "stage_number": 5,
+                "stage_number": 2,
                 "way_number": 1,
                 "stage_table_type": "hash_way",
                 "size": 1024,
@@ -140554,6 +104218,17 @@
                           },
                           {
                             "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
                             "field_width": 4,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
@@ -140564,7 +104239,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 50,
                             "start_bit": 10,
@@ -140576,7 +104251,7 @@
                             "field_width": 6
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 32,
                             "start_bit": 16,
@@ -140588,7 +104263,7 @@
                             "field_width": 8
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 40,
                             "start_bit": 24,
@@ -140601,13 +104276,13 @@
                           },
                           {
                             "start_bit": 0,
-                            "field_width": 31,
+                            "field_width": 30,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
                             "source": "zero",
                             "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "--padding_1_31--",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
                             "match_mode": "unused"
                           },
                           {
@@ -140656,11 +104331,11 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 75 ], "vpns": [ 1 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 91 ], "vpns": [ 1 ] } ]
                 }
               },
               {
-                "stage_number": 5,
+                "stage_number": 2,
                 "way_number": 2,
                 "stage_table_type": "hash_way",
                 "size": 1024,
@@ -140687,6 +104362,17 @@
                           },
                           {
                             "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
                             "field_width": 4,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
@@ -140697,7 +104383,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 50,
                             "start_bit": 10,
@@ -140709,7 +104395,7 @@
                             "field_width": 6
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 32,
                             "start_bit": 16,
@@ -140721,7 +104407,7 @@
                             "field_width": 8
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 40,
                             "start_bit": 24,
@@ -140734,13 +104420,13 @@
                           },
                           {
                             "start_bit": 0,
-                            "field_width": 31,
+                            "field_width": 30,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
                             "source": "zero",
                             "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "--padding_1_31--",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
                             "match_mode": "unused"
                           },
                           {
@@ -140789,11 +104475,11 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 76 ], "vpns": [ 2 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 92 ], "vpns": [ 2 ] } ]
                 }
               },
               {
-                "stage_number": 5,
+                "stage_number": 2,
                 "way_number": 3,
                 "stage_table_type": "hash_way",
                 "size": 1024,
@@ -140820,6 +104506,17 @@
                           },
                           {
                             "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
                             "field_width": 4,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
@@ -140830,7 +104527,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 50,
                             "start_bit": 10,
@@ -140842,7 +104539,7 @@
                             "field_width": 6
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 32,
                             "start_bit": 16,
@@ -140854,7 +104551,7 @@
                             "field_width": 8
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 40,
                             "start_bit": 24,
@@ -140867,13 +104564,13 @@
                           },
                           {
                             "start_bit": 0,
-                            "field_width": 31,
+                            "field_width": 30,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
                             "source": "zero",
                             "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "--padding_1_31--",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
                             "match_mode": "unused"
                           },
                           {
@@ -140922,7 +104619,7 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 77 ], "vpns": [ 3 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 93 ], "vpns": [ 3 ] } ]
                 }
               }
             ]
@@ -140933,37 +104630,14 @@
       },
       "actions": [
         {
-          "name": "FabricIngress.spgw_ingress.load_normal_far_attributes",
-          "handle": 536870939,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_dropped" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "action_param", "name": "drop" }
-            }
-          ],
+          "name": "NoAction",
+          "handle": 536870923,
+          "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
           "is_compiler_added_action": false,
           "constant_default_action": false,
-          "p4_parameters": [
-            {
-              "name": "drop",
-              "start_bit": 0,
-              "position": 0,
-              "default_value": "0x1",
-              "bit_width": 1
-            },
-            {
-              "name": "notify_cp",
-              "start_bit": 1,
-              "position": 1,
-              "default_value": "0x0",
-              "bit_width": 1
-            }
-          ],
+          "p4_parameters": [],
           "override_meter_addr": false,
           "override_meter_addr_pfe": false,
           "override_meter_full_addr": 0,
@@ -140976,95 +104650,49 @@
           "is_action_meter_color_aware": false
         },
         {
-          "name": "FabricIngress.spgw_ingress.load_tunnel_far_attributes",
-          "handle": 536870940,
+          "name": "FabricIngress.spgw.load_pdr",
+          "handle": 536870922,
           "primitives": [
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_dropped" },
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ctr_id" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "ctr_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_id" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "far_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.needs_gtpu_decap" },
               "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "action_param", "name": "drop" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": {
-                "type": "phv",
-                "name": "fabric_metadata.spgw.outer_header_creation"
-              },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.teid" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "teid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_src_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "tunnel_src_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_dst_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "tunnel_dst_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "tunnel_src_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "tunnel_dst_addr" }
+              "src1": { "type": "action_param", "name": "needs_gtpu_decap" }
             }
           ],
           "indirect_resources": [],
-          "allowed_as_default_action": false,
-          "disallowed_as_default_action_reason": "has_const_default",
+          "allowed_as_default_action": true,
           "is_compiler_added_action": false,
           "constant_default_action": false,
           "p4_parameters": [
+            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
             {
-              "name": "drop",
-              "start_bit": 0,
-              "position": 0,
-              "default_value": "0x1",
-              "bit_width": 1
-            },
-            {
-              "name": "notify_cp",
-              "start_bit": 1,
+              "name": "far_id",
+              "start_bit": 32,
               "position": 1,
-              "default_value": "0x0",
-              "bit_width": 1
+              "bit_width": 32
             },
             {
-              "name": "tunnel_src_addr",
-              "start_bit": 2,
+              "name": "needs_gtpu_decap",
+              "start_bit": 64,
               "position": 2,
-              "bit_width": 32
-            },
-            {
-              "name": "tunnel_dst_addr",
-              "start_bit": 34,
-              "position": 3,
-              "bit_width": 32
-            },
-            { "name": "teid", "start_bit": 66, "position": 4, "bit_width": 32 }
+              "bit_width": 1
+            }
           ],
           "override_meter_addr": false,
           "override_meter_addr_pfe": false,
@@ -141082,14 +104710,10627 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777241,
-      "name": "tbl_act_13",
+      "attached_to": "FabricIngress.spgw.downlink_pdrs",
+      "handle": 1879048201,
+      "name": "cond-3",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 32, "true": 33 },
+          "memory_resource_allocation": { "memory_unit": 12, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "FabricIngress.spgw.downlink_pdrs",
+            "true": "FabricIngress.spgw.uplink_pdrs"
+          },
+          "logical_table_id": 0,
+          "stage_number": 2,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [ { "name": "hdr.gtpu.$valid", "start_bit": 4, "bit_width": 1 } ],
+      "condition": "(hdr.gtpu.$valid == 1)",
+      "size": 0
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554435,
+      "name": "FabricIngress.spgw.downlink_pdrs$action",
+      "table_type": "action",
+      "size": 4096,
+      "stage_tables": [
+        {
+          "stage_number": 2,
+          "size": 4096,
+          "stage_table_type": "action_data",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "ctr_id"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "far_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "far_id"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "ctr_id"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "far_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "far_id"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870922
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870923
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] }
+            ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.load_pdr",
+          "handle": 536870922,
+          "p4_parameters": [
+            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
+            {
+              "name": "far_id",
+              "start_bit": 32,
+              "position": 1,
+              "bit_width": 32
+            },
+            {
+              "name": "needs_gtpu_decap",
+              "start_bit": 64,
+              "position": 2,
+              "bit_width": 1
+            }
+          ]
+        },
+        { "name": "NoAction", "handle": 536870923, "p4_parameters": [] }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777221,
+      "name": "FabricIngress.spgw.uplink_pdrs",
+      "table_type": "match",
+      "size": 1024,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554436,
+          "name": "FabricIngress.spgw.uplink_pdrs$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870921,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "tunnel_ipv4_dst",
+          "global_name": "hdr.ipv4.dst_addr",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "hdr.ipv4",
+          "field_name": "dst_addr"
+        },
+        {
+          "name": "teid",
+          "global_name": "hdr.gtpu.teid",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "position": 1,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "hdr.gtpu",
+          "field_name": "teid"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 2,
+            "size": 4096,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 1,
+            "has_attached_gateway": false,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 5,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 6,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 8,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 10,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 11,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      }
+                    ],
+                    "hash_bit": 12,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 13,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      }
+                    ],
+                    "hash_bit": 14,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 16,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      }
+                    ],
+                    "hash_bit": 18,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 20,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 21,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 22,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 23,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      }
+                    ],
+                    "hash_bit": 25,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 26,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 29,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 30,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 31,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      }
+                    ],
+                    "hash_bit": 34,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 35,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 36,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 37,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 39,
+                    "seed": 0
+                  }
+                ],
+                "hash_function_number": 1,
+                "ghost_bit_to_hash_bit": [
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ],
+                  [ 2, 13, 24, 35 ],
+                  [ 3, 14, 25, 36 ],
+                  [ 4, 15, 26, 37 ],
+                  [ 5, 16, 27, 38 ],
+                  [ 6, 17, 28, 39 ],
+                  [ 7, 18, 29, 30 ],
+                  [ 8, 19, 20, 31 ],
+                  [ 9, 10, 21, 32 ]
+                ],
+                "ghost_bit_info": [
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 0 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 1 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 2 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 3 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 4 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 5 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 6 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 7 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 8 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 9 }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536870921,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 4294967295,
+                "next_table_full": 48,
+                "vliw_instruction": -1,
+                "vliw_instruction_full": 64,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricIngress.spgw.decap_gtpu.decap_gtpu",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.load_pdr",
+                "action_handle": 536870920,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 48,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricIngress.spgw.decap_gtpu.decap_gtpu",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "needs_gtpu_decap",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 1
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "immediate",
+                          "match_mode": "unused"
+                        },
+                        {
+                          "field_name": "tunnel_ipv4_dst",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 82,
+                          "start_bit": 10,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 6
+                        },
+                        {
+                          "field_name": "tunnel_ipv4_dst",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 32,
+                          "start_bit": 16,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "field_name": "tunnel_ipv4_dst",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 40,
+                          "start_bit": 24,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "field_name": "teid",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 48,
+                          "start_bit": 0,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "field_name": "teid",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 56,
+                          "start_bit": 8,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "field_name": "teid",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 64,
+                          "start_bit": 16,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "field_name": "teid",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 72,
+                          "start_bit": 24,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 28,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 29,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 2,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 82,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 64,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 72,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 80,
+                            "field_name": "--padding_80_81--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 24,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 88,
+                            "field_name": "--padding_88_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 2,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 82,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 64,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 72,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 80,
+                            "field_name": "--padding_80_81--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 24,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 88,
+                            "field_name": "--padding_88_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 2,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 82,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 64,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 72,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 80,
+                            "field_name": "--padding_80_81--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 24,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 88,
+                            "field_name": "--padding_88_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              },
+              {
+                "stage_number": 2,
+                "way_number": 3,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 82,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 64,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 72,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 80,
+                            "field_name": "--padding_80_81--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 24,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 88,
+                            "field_name": "--padding_88_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 30,
+                  "hash_entry_bit_hi": 39,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 89 ], "vpns": [ 3 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870921,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.load_pdr",
+          "handle": 536870920,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ctr_id" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "ctr_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_id" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "far_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.needs_gtpu_decap" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "needs_gtpu_decap" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
+            {
+              "name": "far_id",
+              "start_bit": 32,
+              "position": 1,
+              "bit_width": 32
+            },
+            {
+              "name": "needs_gtpu_decap",
+              "start_bit": 64,
+              "position": 2,
+              "bit_width": 1
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554436,
+      "name": "FabricIngress.spgw.uplink_pdrs$action",
+      "table_type": "action",
+      "size": 4096,
+      "stage_tables": [
+        {
+          "stage_number": 2,
+          "size": 4096,
+          "stage_table_type": "action_data",
+          "logical_table_id": 1,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "ctr_id"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "far_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "far_id"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "ctr_id"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "far_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "far_id"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870920
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870921
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 94 ], "vpns": [ 0 ] },
+              { "memory_units": [ 95 ], "vpns": [ 1 ] }
+            ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.load_pdr",
+          "handle": 536870920,
+          "p4_parameters": [
+            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
+            {
+              "name": "far_id",
+              "start_bit": 32,
+              "position": 1,
+              "bit_width": 32
+            },
+            {
+              "name": "needs_gtpu_decap",
+              "start_bit": 64,
+              "position": 2,
+              "bit_width": 1
+            }
+          ]
+        },
+        { "name": "NoAction", "handle": 536870921, "p4_parameters": [] }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "egress",
+      "handle": 16777246,
+      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+      "table_type": "match",
+      "size": 1,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870984,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "int_is_valid",
+          "global_name": "hdr.int_header.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.int_header",
+          "field_name": "$valid"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 2,
+            "size": 1024,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": true,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "int_is_valid",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  }
+                ],
+                "hash_function_number": 2,
+                "ghost_bit_to_hash_bit": [ [ 0 ] ],
+                "ghost_bit_info": [ { "field_name": "int_is_valid", "bit_in_match_spec": 0 } ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "nop",
+                "action_handle": 536870984,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 4294967295,
+                "next_table_full": 50,
+                "vliw_instruction": -1,
+                "vliw_instruction_full": 64,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_16",
+                    "next_table_logical_id": 2,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.init_metadata",
+                "action_handle": 536870983,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 50,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 65,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_16",
+                    "next_table_logical_id": 2,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "switch_id",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 32
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 12 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "immediate",
+                          "match_mode": "unused"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action",
+                          "match_mode": "unused"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 24,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 25,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 2,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 79,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 33,
+                            "field_name": "--padding_33_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 74 ], "vpns": [ 0 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "nop",
+          "handle": 536870984,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.init_metadata",
+          "handle": 536870983,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.transit" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_switch_id.switch_id" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "switch_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_port_ids.ingress_port_id" },
+              "dst_mask": { "type": "immediate", "name": "127" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_port_ids.ingress_port_id" },
+              "dst_mask": { "type": "immediate", "name": "511" },
+              "src1": { "type": "phv", "name": "ig_intr_md.ingress_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_port_ids.egress_port_id" },
+              "dst_mask": { "type": "immediate", "name": "127" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_port_ids.egress_port_id" },
+              "dst_mask": { "type": "immediate", "name": "511" },
+              "src1": { "type": "phv", "name": "eg_intr_md.egress_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_ingress_tstamp.ingress_tstamp" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.ig_tstamp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_egress_tstamp.egress_tstamp" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.eg_tstamp" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "sub",
+              "dst": { "type": "phv", "name": "hdr.int_hop_latency.hop_latency" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "eg_intr_md_from_prsr.global_tstamp" },
+              "src2": { "type": "phv", "name": "ig_intr_md_from_prsr.global_tstamp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_q_occupancy.q_occupancy" },
+              "dst_mask": { "type": "immediate", "name": "31" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_q_occupancy.q_occupancy" },
+              "dst_mask": { "type": "immediate", "name": "524287" },
+              "src1": { "type": "phv", "name": "eg_intr_md.deq_qdepth" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "switch_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 32
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+      "handle": 1879048202,
+      "name": "cond-27",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 100, "true": 34 },
+          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "tbl_egress_next_set_mpls",
+            "true": "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
+          },
+          "logical_table_id": 2,
+          "stage_number": 2,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [ { "name": "hdr.int_header.$valid", "start_bit": 3, "bit_width": 1 } ],
+      "condition": "(hdr.int_header.$valid == 1)",
+      "size": 0
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777222,
+      "name": "FabricIngress.spgw.decap_gtpu.decap_gtpu",
+      "table_type": "match",
+      "size": 4,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554437,
+          "name": "FabricIngress.spgw.decap_gtpu.decap_gtpu$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870928,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "hdr.inner_tcp.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.inner_tcp",
+          "field_name": "$valid"
+        },
+        {
+          "name": "hdr.inner_udp.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 1,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.inner_udp",
+          "field_name": "$valid"
+        },
+        {
+          "name": "hdr.inner_icmp.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 2,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.inner_icmp",
+          "field_name": "$valid"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 3,
+            "size": 1024,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "hdr.inner_udp.$valid",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "hdr.inner_tcp.$valid",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "hdr.inner_icmp.$valid",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 0
+                  }
+                ],
+                "hash_function_number": 0,
+                "ghost_bit_to_hash_bit": [ [ 2 ], [ 1 ], [ 0 ] ],
+                "ghost_bit_info": [
+                  {
+                    "field_name": "hdr.inner_icmp.$valid",
+                    "bit_in_match_spec": 0
+                  },
+                  {
+                    "field_name": "hdr.inner_tcp.$valid",
+                    "bit_in_match_spec": 0
+                  },
+                  {
+                    "field_name": "hdr.inner_udp.$valid",
+                    "bit_in_match_spec": 0
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "FabricIngress.spgw.decap_gtpu.decap_inner_tcp",
+                "action_handle": 536870925,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 49,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 65,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_1",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.decap_gtpu.decap_inner_udp",
+                "action_handle": 536870926,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 49,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_1",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.decap_gtpu.decap_inner_icmp",
+                "action_handle": 536870927,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 49,
+                "vliw_instruction": 3,
+                "vliw_instruction_full": 68,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_1",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.decap_gtpu.decap_inner_unknown",
+                "action_handle": 536870928,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 49,
+                "vliw_instruction": 4,
+                "vliw_instruction_full": 70,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_1",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": []
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action",
+                          "match_mode": "unused"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 28,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 29,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 3,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 3,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 109,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 3,
+                            "field_name": "--padding_3_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_tcp",
+          "handle": 536870925,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x800" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.tcp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.seq_no" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.seq_no" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.ack_no" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.ack_no" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.data_offset" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.data_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.res" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.res" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.ecn" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.ctrl" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.ctrl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.window" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.window" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.urgent_ptr" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.urgent_ptr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_tcp.$valid" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_udp",
+          "handle": 536870926,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x800" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.checksum" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_udp.$valid" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_icmp",
+          "handle": 536870927,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x800" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.icmp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.icmp_type" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.icmp_type" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.icmp_code" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.icmp_code" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.identifier" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.identifier" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.sequence_number" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.sequence_number" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.timestamp" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.timestamp" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_icmp.$valid" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_unknown",
+          "handle": 536870928,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x800" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": [
+        {
+          "priority": 0,
+          "match_key_fields_values": [
+            { "field_name": "hdr.inner_tcp.$valid", "value": "0x1" },
+            { "field_name": "hdr.inner_udp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_icmp.$valid", "value": "0x0" }
+          ],
+          "action_handle": 536870925,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 1,
+          "match_key_fields_values": [
+            { "field_name": "hdr.inner_tcp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_udp.$valid", "value": "0x1" },
+            { "field_name": "hdr.inner_icmp.$valid", "value": "0x0" }
+          ],
+          "action_handle": 536870926,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 2,
+          "match_key_fields_values": [
+            { "field_name": "hdr.inner_tcp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_udp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_icmp.$valid", "value": "0x1" }
+          ],
+          "action_handle": 536870927,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "attached_to": "FabricIngress.spgw.decap_gtpu.decap_gtpu",
+      "handle": 1879048203,
+      "name": "cond-5",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 49, "true": 48 },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "tbl_act_1",
+            "true": "FabricIngress.spgw.decap_gtpu.decap_gtpu"
+          },
+          "logical_table_id": 0,
+          "stage_number": 3,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.spgw.needs_gtpu_decap",
+          "start_bit": 2,
+          "bit_width": 1
+        }
+      ],
+      "condition": "(fabric_metadata.spgw.needs_gtpu_decap == 1)",
+      "size": 0
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554437,
+      "name": "FabricIngress.spgw.decap_gtpu.decap_gtpu$action",
+      "table_type": "action",
+      "size": 2048,
+      "stage_tables": [
+        {
+          "stage_number": 3,
+          "size": 2048,
+          "stage_table_type": "action_data",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 76,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 75,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 78,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 107,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 110,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 112,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 11,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_10--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 77,
+                      "field_name": "--padding_13_13--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 79,
+                      "field_name": "--padding_15_15--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 81,
+                      "field_name": "--padding_17_42--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 109,
+                      "field_name": "--padding_45_45--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 111,
+                      "field_name": "--padding_47_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 15,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 113,
+                      "field_name": "--padding_49_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 12,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 11,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 14,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 43,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 46,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 11,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_10--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 13,
+                      "field_name": "--padding_13_13--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 15,
+                      "field_name": "--padding_15_15--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 17,
+                      "field_name": "--padding_17_42--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 45,
+                      "field_name": "--padding_45_45--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 47,
+                      "field_name": "--padding_47_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 15,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 49,
+                      "field_name": "--padding_49_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870927
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 76,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 75,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 71,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 79,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 103,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 107,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 111,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_6--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 72,
+                      "field_name": "--padding_8_10--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 77,
+                      "field_name": "--padding_13_14--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 23,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "--padding_16_38--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 104,
+                      "field_name": "--padding_40_42--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 109,
+                      "field_name": "--padding_45_46--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 112,
+                      "field_name": "--padding_48_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 12,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 11,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 7,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 15,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 39,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 43,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 47,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_6--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "--padding_8_10--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 13,
+                      "field_name": "--padding_13_14--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 23,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "--padding_16_38--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 40,
+                      "field_name": "--padding_40_42--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 45,
+                      "field_name": "--padding_45_46--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "--padding_48_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870925
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870926
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870928
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_icmp",
+          "handle": 536870927,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_tcp",
+          "handle": 536870925,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_udp",
+          "handle": 536870926,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_unknown",
+          "handle": 536870928,
+          "p4_parameters": []
+        }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777223,
+      "name": "tbl_act_1",
       "table_type": "match",
       "size": 8388608,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 5,
+            "stage_number": 3,
             "size": 1,
             "stage_table_type": "match_with_no_key",
             "logical_table_id": 1,
@@ -141104,17 +115345,23 @@
                 "number_memory_units_per_table_word": 0
               }
             ],
-            "result_physical_buses": [ 1 ],
+            "result_physical_buses": [ 0 ],
             "action_format": [
               {
-                "action_name": "act_13",
-                "action_handle": 536870938,
+                "action_name": "act_1",
+                "action_handle": 536870924,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
-                "next_table_full": 255,
-                "vliw_instruction": 0,
+                "next_table_full": 64,
+                "vliw_instruction": 1,
                 "vliw_instruction_full": 64,
-                "next_tables": [],
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricIngress.spgw.fars",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 4
+                  }
+                ],
                 "immediate_fields": []
               }
             ]
@@ -141124,18 +115371,15 @@
       },
       "actions": [
         {
-          "name": "act_13",
-          "handle": 536870938,
+          "name": "act_1",
+          "handle": 536870924,
           "primitives": [
             {
               "name": "CountFromHashPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricIngress.spgw_ingress.pdr_counter"
-              },
+              "dst": { "type": "counter", "name": "FabricIngress.spgw.pdr_counter" },
               "idx": {
                 "type": "hash",
-                "name": "hash_FabricIngress.spgw_ingress.pdr_counter",
+                "name": "hash_FabricIngress.spgw.pdr_counter",
                 "algorithm": "identity"
               },
               "hash_inputs": [
@@ -141161,7 +115405,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870938,
+      "default_action_handle": 536870924,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -141175,44 +115419,53 @@
       "statistics_table_refs": [
         {
           "how_referenced": "indirect",
-          "handle": 67108867,
-          "name": "FabricIngress.spgw_ingress.pdr_counter"
+          "handle": 67108865,
+          "name": "FabricIngress.spgw.pdr_counter"
         }
       ],
       "stateful_table_refs": []
     },
     {
       "direction": "ingress",
-      "attached_to": "tbl_act_13",
-      "handle": 1879048212,
-      "name": "tbl_act_13-gateway",
+      "attached_to": "tbl_act_1",
+      "handle": 1879048204,
+      "name": "cond-4",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 96, "true": 96 },
-          "memory_resource_allocation": { "memory_unit": 6, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 64, "true": 64 },
+          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "tbl_act_14", "true": "tbl_act_14" },
+          "next_table_names": {
+            "false": "FabricIngress.spgw.fars",
+            "true": "FabricIngress.spgw.fars"
+          },
           "logical_table_id": 1,
-          "stage_number": 5,
+          "stage_number": 3,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [],
-      "condition": "true(always hit)",
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.spgw.src_iface",
+          "start_bit": 0,
+          "bit_width": 8
+        }
+      ],
+      "condition": "(fabric_metadata.spgw.src_iface != 3)",
       "size": 0
     },
     {
       "direction": "ingress",
-      "handle": 67108867,
-      "name": "FabricIngress.spgw_ingress.pdr_counter",
+      "handle": 67108865,
+      "name": "FabricIngress.spgw.pdr_counter",
       "table_type": "statistics",
-      "size": 1024,
+      "size": 2048,
       "stage_tables": [
         {
-          "stage_number": 5,
-          "size": 1024,
+          "stage_number": 3,
+          "size": 2048,
           "stage_table_type": "statistics",
           "logical_table_id": 1,
           "pack_format": [
@@ -141225,10 +115478,13 @@
           ],
           "memory_resource_allocation": {
             "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 30 ], "vpns": [ 0 ] } ],
-            "spare_bank_memory_unit": 31
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 80
           },
-          "stats_alu_index": 1
+          "stats_alu_index": 3
         }
       ],
       "how_referenced": "indirect",
@@ -141240,19 +115496,19 @@
     },
     {
       "direction": "egress",
-      "handle": 16777262,
-      "name": "tbl_act_29",
+      "handle": 16777247,
+      "name": "tbl_act_16",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 5,
+            "stage_number": 3,
             "size": 0,
             "stage_table_type": "ternary_match",
             "logical_table_id": 2,
             "has_attached_gateway": true,
-            "default_next_table": 83,
+            "default_next_table": 65,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -141287,9 +115543,9 @@
               }
             ],
             "memory_resource_allocation": null,
-            "result_physical_buses": [ 5 ],
+            "result_physical_buses": [ 1 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 5,
+              "stage_number": 3,
               "stage_table_type": "ternary_indirection",
               "size": 0,
               "pack_format": [
@@ -142105,18 +116361,18 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_28",
-                  "action_handle": 536871025,
+                  "action_name": "act_16",
+                  "action_handle": 536870985,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 83,
+                  "next_table_full": 65,
                   "vliw_instruction": 1,
                   "vliw_instruction_full": 65,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_30",
-                      "next_table_logical_id": 3,
-                      "next_table_stage_no": 5
+                      "next_table_name": "tbl_act_17",
+                      "next_table_logical_id": 1,
+                      "next_table_stage_no": 4
                     }
                   ],
                   "immediate_fields": []
@@ -142134,16 +116390,18 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_28",
-          "handle": 536871025,
+          "name": "act_16",
+          "handle": 536870985,
           "primitives": [
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" },
-              "src2": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": {
+                "type": "phv",
+                "name": "process_int_main_process_int_transit_hasReturned"
+              },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
             }
           ],
           "indirect_resources": [],
@@ -142164,7 +116422,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536871025,
+      "default_action_handle": 536870985,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -142176,30 +116434,9660 @@
     },
     {
       "direction": "egress",
-      "attached_to": "tbl_act_29",
-      "handle": 1879048213,
-      "name": "cond-35",
+      "attached_to": "tbl_act_16",
+      "handle": 1879048205,
+      "name": "cond-28",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 83, "true": 82 },
-          "memory_resource_allocation": { "memory_unit": 3, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 65, "true": 50 },
+          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "tbl_act_30", "true": "tbl_act_29" },
+          "next_table_names": { "false": "tbl_act_17", "true": "tbl_act_16" },
           "logical_table_id": 2,
-          "stage_number": 5,
+          "stage_number": 3,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.ipv4.$valid", "start_bit": 5, "bit_width": 1 } ],
-      "condition": "(hdr.ipv4.$valid == 1)",
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.int_meta.transit",
+          "start_bit": 3,
+          "bit_width": 1
+        }
+      ],
+      "condition": "(fabric_metadata.int_meta.transit == 0)",
+      "size": 0
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777224,
+      "name": "FabricIngress.spgw.fars",
+      "table_type": "match",
+      "size": 2048,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554438,
+          "name": "FabricIngress.spgw.fars$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870929,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "far_id",
+          "global_name": "fabric_metadata.spgw.far_id",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "fabric_metadata.spgw",
+          "field_name": "far_id"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 4096,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": false,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 5,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      }
+                    ],
+                    "hash_bit": 6,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 8,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 10,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      }
+                    ],
+                    "hash_bit": 11,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      }
+                    ],
+                    "hash_bit": 12,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      }
+                    ],
+                    "hash_bit": 13,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      }
+                    ],
+                    "hash_bit": 14,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 16,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      }
+                    ],
+                    "hash_bit": 18,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 20,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 21,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      }
+                    ],
+                    "hash_bit": 22,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      }
+                    ],
+                    "hash_bit": 23,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      }
+                    ],
+                    "hash_bit": 25,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      }
+                    ],
+                    "hash_bit": 26,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      }
+                    ],
+                    "hash_bit": 29,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      }
+                    ],
+                    "hash_bit": 30,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 31,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      }
+                    ],
+                    "hash_bit": 34,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      }
+                    ],
+                    "hash_bit": 35,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      }
+                    ],
+                    "hash_bit": 36,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      }
+                    ],
+                    "hash_bit": 37,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      }
+                    ],
+                    "hash_bit": 39,
+                    "seed": 1
+                  }
+                ],
+                "hash_function_number": 0,
+                "ghost_bit_to_hash_bit": [
+                  [ 2, 13, 24, 35 ],
+                  [ 3, 14, 25, 36 ],
+                  [ 4, 15, 26, 37 ],
+                  [ 5, 16, 27, 38 ],
+                  [ 6, 17, 28, 39 ],
+                  [ 7, 18, 29, 30 ],
+                  [ 8, 19, 20, 31 ],
+                  [ 9, 10, 21, 32 ],
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ]
+                ],
+                "ghost_bit_info": [
+                  { "field_name": "far_id", "bit_in_match_spec": 0 },
+                  { "field_name": "far_id", "bit_in_match_spec": 1 },
+                  { "field_name": "far_id", "bit_in_match_spec": 2 },
+                  { "field_name": "far_id", "bit_in_match_spec": 3 },
+                  { "field_name": "far_id", "bit_in_match_spec": 4 },
+                  { "field_name": "far_id", "bit_in_match_spec": 5 },
+                  { "field_name": "far_id", "bit_in_match_spec": 6 },
+                  { "field_name": "far_id", "bit_in_match_spec": 7 },
+                  { "field_name": "far_id", "bit_in_match_spec": 8 },
+                  { "field_name": "far_id", "bit_in_match_spec": 9 }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "FabricIngress.spgw.load_normal_far",
+                "action_handle": 536870929,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 80,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_2",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.load_tunnel_far",
+                "action_handle": 536870930,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 80,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_2",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.load_dbuf_far",
+                "action_handle": 536870931,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 80,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 68,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_2",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "field_name": "far_id",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 50,
+                          "start_bit": 10,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 6
+                        },
+                        {
+                          "field_name": "far_id",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 32,
+                          "start_bit": 16,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "field_name": "far_id",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 40,
+                          "start_bit": 24,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action",
+                          "match_mode": "unused"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 28,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 29,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 4,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 50,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 30,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_49--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 4,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 50,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 30,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_49--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 4,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 50,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 30,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_49--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              },
+              {
+                "stage_number": 4,
+                "way_number": 3,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 50,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 30,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_49--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 30,
+                  "hash_entry_bit_hi": 39,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 89 ], "vpns": [ 3 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.load_normal_far",
+          "handle": 536870929,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_forwarding" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "drop" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_next" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "drop" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "drop",
+              "start_bit": 0,
+              "position": 0,
+              "default_value": "0x1",
+              "bit_width": 1
+            },
+            {
+              "name": "notify_cp",
+              "start_bit": 1,
+              "position": 1,
+              "default_value": "0x0",
+              "bit_width": 1
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.load_tunnel_far",
+          "handle": 536870930,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_forwarding" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "drop" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_next" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "drop" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.needs_gtpu_encap" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.teid" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "teid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_src_port" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "action_param", "name": "tunnel_src_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "action_param", "name": "tunnel_src_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "2152" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "drop",
+              "start_bit": 0,
+              "position": 0,
+              "default_value": "0x1",
+              "bit_width": 1
+            },
+            {
+              "name": "notify_cp",
+              "start_bit": 1,
+              "position": 1,
+              "default_value": "0x0",
+              "bit_width": 1
+            },
+            {
+              "name": "tunnel_src_port",
+              "start_bit": 2,
+              "position": 2,
+              "bit_width": 16
+            },
+            {
+              "name": "tunnel_src_addr",
+              "start_bit": 18,
+              "position": 3,
+              "bit_width": 32
+            },
+            {
+              "name": "tunnel_dst_addr",
+              "start_bit": 50,
+              "position": 4,
+              "bit_width": 32
+            },
+            { "name": "teid", "start_bit": 82, "position": 5, "bit_width": 32 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.load_dbuf_far",
+          "handle": 536870931,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_forwarding" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "drop" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_next" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "drop" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.needs_gtpu_encap" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.teid" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "teid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_src_port" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "action_param", "name": "tunnel_src_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "action_param", "name": "tunnel_src_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "2152" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": {
+                "type": "phv",
+                "name": "fabric_metadata.spgw.skip_egress_pdr_ctr"
+              },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "drop",
+              "start_bit": 0,
+              "position": 0,
+              "default_value": "0x1",
+              "bit_width": 1
+            },
+            {
+              "name": "notify_cp",
+              "start_bit": 1,
+              "position": 1,
+              "default_value": "0x0",
+              "bit_width": 1
+            },
+            {
+              "name": "tunnel_src_port",
+              "start_bit": 2,
+              "position": 2,
+              "bit_width": 16
+            },
+            {
+              "name": "tunnel_src_addr",
+              "start_bit": 18,
+              "position": 3,
+              "bit_width": 32
+            },
+            {
+              "name": "tunnel_dst_addr",
+              "start_bit": 50,
+              "position": 4,
+              "bit_width": 32
+            },
+            { "name": "teid", "start_bit": 82, "position": 5, "bit_width": 32 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554438,
+      "name": "FabricIngress.spgw.fars$action",
+      "table_type": "action",
+      "size": 4096,
+      "stage_tables": [
+        {
+          "stage_number": 4,
+          "size": 4096,
+          "stage_table_type": "action_data",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "tunnel_src_port"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "tunnel_src_port"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "tunnel_src_port"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "drop"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "drop"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "teid"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "tunnel_src_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "tunnel_src_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "tunnel_dst_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "tunnel_dst_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 15,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 17,
+                      "field_name": "--padding_17_31--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870931
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "drop"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "drop"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 127,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 1,
+                      "field_name": "--padding_1_127--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870929
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "tunnel_src_port"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "tunnel_src_port"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "tunnel_src_port"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "drop"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "drop"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "teid"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "tunnel_src_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "tunnel_src_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "tunnel_dst_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "tunnel_dst_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 15,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 17,
+                      "field_name": "--padding_17_31--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870930
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 91 ], "vpns": [ 0 ] },
+              { "memory_units": [ 92 ], "vpns": [ 1 ] },
+              { "memory_units": [ 93 ], "vpns": [ 2 ] },
+              { "memory_units": [ 94 ], "vpns": [ 3 ] }
+            ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.load_dbuf_far",
+          "handle": 536870931,
+          "p4_parameters": [
+            { "name": "drop", "start_bit": 0, "position": 0, "bit_width": 1 },
+            {
+              "name": "notify_cp",
+              "start_bit": 1,
+              "position": 1,
+              "bit_width": 1
+            },
+            {
+              "name": "tunnel_src_port",
+              "start_bit": 2,
+              "position": 2,
+              "bit_width": 16
+            },
+            {
+              "name": "tunnel_src_addr",
+              "start_bit": 18,
+              "position": 3,
+              "bit_width": 32
+            },
+            {
+              "name": "tunnel_dst_addr",
+              "start_bit": 50,
+              "position": 4,
+              "bit_width": 32
+            },
+            { "name": "teid", "start_bit": 82, "position": 5, "bit_width": 32 }
+          ]
+        },
+        {
+          "name": "FabricIngress.spgw.load_normal_far",
+          "handle": 536870929,
+          "p4_parameters": [
+            { "name": "drop", "start_bit": 0, "position": 0, "bit_width": 1 },
+            {
+              "name": "notify_cp",
+              "start_bit": 1,
+              "position": 1,
+              "bit_width": 1
+            }
+          ]
+        },
+        {
+          "name": "FabricIngress.spgw.load_tunnel_far",
+          "handle": 536870930,
+          "p4_parameters": [
+            { "name": "drop", "start_bit": 0, "position": 0, "bit_width": 1 },
+            {
+              "name": "notify_cp",
+              "start_bit": 1,
+              "position": 1,
+              "bit_width": 1
+            },
+            {
+              "name": "tunnel_src_port",
+              "start_bit": 2,
+              "position": 2,
+              "bit_width": 16
+            },
+            {
+              "name": "tunnel_src_addr",
+              "start_bit": 18,
+              "position": 3,
+              "bit_width": 32
+            },
+            {
+              "name": "tunnel_dst_addr",
+              "start_bit": 50,
+              "position": 4,
+              "bit_width": 32
+            },
+            { "name": "teid", "start_bit": 82, "position": 5, "bit_width": 32 }
+          ]
+        }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "egress",
+      "handle": 16777248,
+      "name": "tbl_act_17",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 1,
+            "has_attached_gateway": true,
+            "default_next_table": 66,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 0 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 4,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "act_18",
+                  "action_handle": 536871020,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 66,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 65,
+                  "next_tables": [
+                    {
+                      "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
+                      "next_table_logical_id": 2,
+                      "next_table_stage_no": 4
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "act_18",
+          "handle": 536871020,
+          "primitives": [
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.int_header.total_hop_cnt" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.int_header.total_hop_cnt" },
+              "src2": { "type": "immediate", "name": "1" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536871020,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_17",
+      "handle": 1879048206,
+      "name": "cond-29",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 100, "true": 65 },
+          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "tbl_egress_next_set_mpls", "true": "tbl_act_17" },
+          "logical_table_id": 1,
+          "stage_number": 4,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        {
+          "name": "process_int_main_process_int_transit_hasReturned",
+          "start_bit": 4,
+          "bit_width": 1
+        }
+      ],
+      "condition": "(!process_int_main_process_int_transit_hasReturned)",
       "size": 0
     },
     {
       "direction": "egress",
-      "handle": 16777263,
-      "name": "tbl_act_30",
+      "handle": 16777249,
+      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
+      "table_type": "match",
+      "size": 1024,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554444,
+          "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536871002,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "hdr.int_header.instruction_mask_0003",
+          "start_bit": 0,
+          "bit_width": 4,
+          "bit_width_full": 4,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "hdr.int_header",
+          "field_name": "instruction_mask_0003"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 1024,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": false,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "hdr.int_header.instruction_mask_0003",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "hdr.int_header.instruction_mask_0003",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "hdr.int_header.instruction_mask_0003",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "hdr.int_header.instruction_mask_0003",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 0
+                  }
+                ],
+                "hash_function_number": 1,
+                "ghost_bit_to_hash_bit": [ [ 0 ], [ 1 ], [ 2 ], [ 3 ] ],
+                "ghost_bit_info": [
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0003",
+                    "bit_in_match_spec": 0
+                  },
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0003",
+                    "bit_in_match_spec": 1
+                  },
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0003",
+                    "bit_in_match_spec": 2
+                  },
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0003",
+                    "bit_in_match_spec": 3
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536871002,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 4294967295,
+                "next_table_full": 85,
+                "vliw_instruction": -1,
+                "vliw_instruction_full": 67,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
+                "action_handle": 536870986,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 64,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
+                "action_handle": 536870987,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
+                "action_handle": 536870988,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 4,
+                "vliw_instruction_full": 68,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
+                "action_handle": 536870989,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 6,
+                "vliw_instruction_full": 70,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
+                "action_handle": 536870990,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 8,
+                "vliw_instruction_full": 72,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
+                "action_handle": 536870991,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 10,
+                "vliw_instruction_full": 74,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
+                "action_handle": 536870992,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 12,
+                "vliw_instruction_full": 76,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
+                "action_handle": 536870993,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 14,
+                "vliw_instruction_full": 78,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
+                "action_handle": 536870994,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 16,
+                "vliw_instruction_full": 80,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
+                "action_handle": 536870995,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 18,
+                "vliw_instruction_full": 82,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
+                "action_handle": 536870996,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 20,
+                "vliw_instruction_full": 84,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
+                "action_handle": 536870997,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 22,
+                "vliw_instruction_full": 86,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
+                "action_handle": 536870998,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 24,
+                "vliw_instruction_full": 88,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+                "action_handle": 536870999,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 26,
+                "vliw_instruction_full": 90,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+                "action_handle": 536871000,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 28,
+                "vliw_instruction_full": 92,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+                "action_handle": 536871001,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 30,
+                "vliw_instruction_full": 94,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_16",
+                    "param_type": "constant",
+                    "const_value": 16,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 15 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 16,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 6,
+                          "field_name": "immediate",
+                          "match_mode": "unused"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 6,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action",
+                          "match_mode": "unused"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 30,
+                    "stash_match_data_select": 1,
+                    "stash_hashbank_select": 1,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 31,
+                    "stash_match_data_select": 1,
+                    "stash_hashbank_select": 1,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 4,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 6,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 16,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 6,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 90,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 22,
+                            "field_name": "--padding_22_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536871002,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
+          "handle": 536870986,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
+          "handle": 536870987,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
+          "handle": 536870988,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
+          "handle": 536870989,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
+          "handle": 536870990,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
+          "handle": 536870991,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
+          "handle": 536870992,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
+          "handle": 536870993,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
+          "handle": 536870994,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
+          "handle": 536870995,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
+          "handle": 536870996,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
+          "handle": 536870997,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
+          "handle": 536870998,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+          "handle": 536870999,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+          "handle": 536871000,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+          "handle": 536871001,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "4" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "16" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": [
+        {
+          "priority": 0,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x0"
+            }
+          ],
+          "action_handle": 536870986,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 1,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x1"
+            }
+          ],
+          "action_handle": 536870987,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 2,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x2"
+            }
+          ],
+          "action_handle": 536870988,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 3,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x3"
+            }
+          ],
+          "action_handle": 536870989,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 4,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x4"
+            }
+          ],
+          "action_handle": 536870990,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 5,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x5"
+            }
+          ],
+          "action_handle": 536870991,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 6,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x6"
+            }
+          ],
+          "action_handle": 536870992,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 7,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x7"
+            }
+          ],
+          "action_handle": 536870993,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 8,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x8"
+            }
+          ],
+          "action_handle": 536870994,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 9,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x9"
+            }
+          ],
+          "action_handle": 536870995,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 10,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0xa"
+            }
+          ],
+          "action_handle": 536870996,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 11,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0xb"
+            }
+          ],
+          "action_handle": 536870997,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 12,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0xc"
+            }
+          ],
+          "action_handle": 536870998,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 13,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0xd"
+            }
+          ],
+          "action_handle": 536870999,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 14,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0xe"
+            }
+          ],
+          "action_handle": 536871000,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 15,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0xf"
+            }
+          ],
+          "action_handle": 536871001,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        }
+      ]
+    },
+    {
+      "direction": "egress",
+      "handle": 33554444,
+      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003$action",
+      "table_type": "action",
+      "size": 2048,
+      "stage_tables": [
+        {
+          "stage_number": 4,
+          "size": 2048,
+          "stage_table_type": "action_data",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870986
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870987
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "--padding_20_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "--padding_24_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 116,
+                      "field_name": "--padding_52_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "--padding_56_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "--padding_20_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "--padding_24_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 52,
+                      "field_name": "--padding_52_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "--padding_56_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870996
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "--padding_20_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 116,
+                      "field_name": "--padding_52_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "--padding_20_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 52,
+                      "field_name": "--padding_52_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870997
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870998
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "--padding_21_23--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "--padding_53_55--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "--padding_21_23--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "--padding_53_55--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870999
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "--padding_24_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "--padding_56_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "--padding_24_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "--padding_56_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871000
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871001
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870988
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870989
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870990
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 116,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 20,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_19--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "--padding_21_23--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "--padding_25_51--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "--padding_53_55--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 52,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 20,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_19--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "--padding_21_23--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_51--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "--padding_53_55--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870991
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 116,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 20,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_19--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 28,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "--padding_24_51--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "--padding_56_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 52,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 20,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_19--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 28,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "--padding_24_51--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "--padding_56_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870992
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 116,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 20,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_19--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "--padding_25_51--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 52,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 20,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_19--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_51--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870993
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870994
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "--padding_20_23--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 116,
+                      "field_name": "--padding_52_55--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "--padding_20_23--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 52,
+                      "field_name": "--padding_52_55--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870995
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871002
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 78 ], "vpns": [ 0 ] } ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
+          "handle": 536870986,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
+          "handle": 536870987,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
+          "handle": 536870996,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
+          "handle": 536870997,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
+          "handle": 536870998,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+          "handle": 536870999,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+          "handle": 536871000,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+          "handle": 536871001,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
+          "handle": 536870988,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
+          "handle": 536870989,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
+          "handle": 536870990,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
+          "handle": 536870991,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
+          "handle": 536870992,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
+          "handle": 536870993,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
+          "handle": 536870994,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
+          "handle": 536870995,
+          "p4_parameters": []
+        },
+        { "name": "NoAction", "handle": 536871002, "p4_parameters": [] }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777225,
+      "name": "tbl_act_2",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -142208,9 +126096,9 @@
             "stage_number": 5,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 3,
-            "has_attached_gateway": true,
-            "default_next_table": 84,
+            "logical_table_id": 0,
+            "has_attached_gateway": false,
+            "default_next_table": 81,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -143063,17 +126951,17 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_30",
-                  "action_handle": 536871026,
+                  "action_name": "act_2",
+                  "action_handle": 536870932,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 84,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
+                  "next_table_full": 81,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 65,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_31",
-                      "next_table_logical_id": 4,
+                      "next_table_name": "tbl_act_3",
+                      "next_table_logical_id": 1,
                       "next_table_stage_no": 5
                     }
                   ],
@@ -143092,16 +126980,15 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_30",
-          "handle": 536871026,
+          "name": "act_2",
+          "handle": 536870932,
           "primitives": [
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.udp.len" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ipv4_len" },
               "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.udp.len" },
-              "src2": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" }
+              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" }
             }
           ],
           "indirect_resources": [],
@@ -143122,7 +127009,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536871026,
+      "default_action_handle": 536870932,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -143133,31 +127020,9 @@
       "static_entries": []
     },
     {
-      "direction": "egress",
-      "attached_to": "tbl_act_30",
-      "handle": 1879048214,
-      "name": "cond-36",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 84, "true": 83 },
-          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_31", "true": "tbl_act_30" },
-          "logical_table_id": 3,
-          "stage_number": 5,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.udp.$valid", "start_bit": 7, "bit_width": 1 } ],
-      "condition": "(hdr.udp.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777264,
-      "name": "tbl_act_31",
+      "direction": "ingress",
+      "handle": 16777226,
+      "name": "tbl_act_3",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -143166,9 +127031,9 @@
             "stage_number": 5,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 4,
+            "logical_table_id": 1,
             "has_attached_gateway": true,
-            "default_next_table": 85,
+            "default_next_table": 82,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -144021,17 +127886,17 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_31",
-                  "action_handle": 536871027,
+                  "action_name": "act_3",
+                  "action_handle": 536870933,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 85,
+                  "next_table_full": 82,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 67,
+                  "vliw_instruction_full": 66,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_egress_next_set_mpls",
-                      "next_table_logical_id": 5,
+                      "next_table_name": "FabricIngress.filtering.fwd_classifier",
+                      "next_table_logical_id": 2,
                       "next_table_stage_no": 5
                     }
                   ],
@@ -144050,16 +127915,29 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_31",
-          "handle": 536871027,
+          "name": "act_3",
+          "handle": 536870933,
           "primitives": [
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.intl4_shim.len_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.intl4_shim.len_words" },
-              "src2": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.vlan_id" },
+              "dst_mask": { "type": "immediate", "name": "4095" },
+              "src1": { "type": "phv", "name": "hdr.vlan_tag.vlan_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.vlan_pri" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.vlan_tag.pri" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.vlan_cfi" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.vlan_tag.cfi" }
             }
           ],
           "indirect_resources": [],
@@ -144080,7 +127958,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536871027,
+      "default_action_handle": 536870933,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -144091,72 +127969,910 @@
       "static_entries": []
     },
     {
-      "direction": "egress",
-      "attached_to": "tbl_act_31",
-      "handle": 1879048215,
-      "name": "cond-37",
+      "direction": "ingress",
+      "attached_to": "tbl_act_3",
+      "handle": 1879048207,
+      "name": "cond-6",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 85, "true": 84 },
-          "memory_resource_allocation": { "memory_unit": 12, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_egress_next_set_mpls", "true": "tbl_act_31" },
-          "logical_table_id": 4,
-          "stage_number": 5,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.intl4_shim.$valid", "start_bit": 3, "bit_width": 1 } ],
-      "condition": "(hdr.intl4_shim.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_egress_next_set_mpls",
-      "handle": 1879048216,
-      "name": "cond-22",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 85, "true": 86 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 82, "true": 81 },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
-            "false": "tbl_egress_next_set_mpls",
-            "true": "tbl_egress_next_pop_mpls_if_present"
+            "false": "FabricIngress.filtering.fwd_classifier",
+            "true": "tbl_act_3"
           },
-          "logical_table_id": 5,
+          "logical_table_id": 1,
           "stage_number": 5,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [
-        {
-          "name": "fabric_metadata.mpls_label.0-3",
-          "start_bit": 4,
-          "bit_width": 4
-        },
-        {
-          "name": "fabric_metadata.mpls_label.4-19",
-          "start_bit": 8,
-          "bit_width": 8
-        },
-        {
-          "name": "fabric_metadata.mpls_label.4-19",
-          "start_bit": 16,
-          "bit_width": 8
-        }
-      ],
-      "condition": "(fabric_metadata.mpls_label == 0)",
+      "condition_fields": [ { "name": "hdr.vlan_tag.$valid", "start_bit": 3, "bit_width": 1 } ],
+      "condition": "(hdr.vlan_tag.$valid == 1)",
       "size": 0
     },
     {
-      "direction": "egress",
-      "handle": 16777265,
-      "name": "tbl_egress_next_set_mpls",
+      "direction": "ingress",
+      "handle": 16777227,
+      "name": "FabricIngress.filtering.fwd_classifier",
+      "table_type": "match",
+      "size": 128,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 5,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": false,
+            "default_next_table": 83,
+            "pack_format": [
+              {
+                "table_word_width": 141,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 3,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_payload_1--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_1--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_payload_2--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_2--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_type",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 32,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "eth_type",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ig_port",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 9
+                      },
+                      {
+                        "field_name": "ip_eth_type",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 24,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 28,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 34
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 10,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 7
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 0, 1, 2 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 2
+            },
+            "result_physical_buses": [ 0 ],
+            "ternary_indirection_stage_table": {
+              "action_format": [
+                {
+                  "action_name": "FabricIngress.filtering.set_forwarding_type",
+                  "action_handle": 536870938,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 83,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 67,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_5",
+                      "next_table_logical_id": 3,
+                      "next_table_stage_no": 5
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ],
+              "memory_resource_allocation": null,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "entries": [ { "entry_number": 0, "fields": [] } ],
+                  "table_word_width": 0,
+                  "number_memory_units_per_table_word": 0
+                }
+              ],
+              "logical_table_id": 2,
+              "stage_number": 5,
+              "stage_table_type": "ternary_indirection",
+              "size": 0
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554439,
+          "name": "FabricIngress.filtering.fwd_classifier$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108866,
+          "name": "FabricIngress.filtering.fwd_classifier_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870938,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ig_port",
+          "global_name": "ig_intr_md.ingress_port",
+          "start_bit": 0,
+          "bit_width": 9,
+          "bit_width_full": 9,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "ig_intr_md",
+          "field_name": "ingress_port"
+        },
+        {
+          "name": "eth_dst",
+          "global_name": "hdr.ethernet.dst_addr",
+          "start_bit": 0,
+          "bit_width": 48,
+          "bit_width_full": 48,
+          "position": 1,
+          "match_type": "ternary",
+          "is_valid": false,
+          "instance_name": "hdr.ethernet",
+          "field_name": "dst_addr"
+        },
+        {
+          "name": "eth_type",
+          "global_name": "hdr.eth_type.value",
+          "start_bit": 0,
+          "bit_width": 16,
+          "bit_width_full": 16,
+          "position": 2,
+          "match_type": "ternary",
+          "is_valid": false,
+          "instance_name": "hdr.eth_type",
+          "field_name": "value"
+        },
+        {
+          "name": "ip_eth_type",
+          "global_name": "fabric_metadata.ip_eth_type",
+          "start_bit": 0,
+          "bit_width": 16,
+          "bit_width_full": 16,
+          "position": 3,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "ip_eth_type"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "actions": [
+        {
+          "name": "FabricIngress.filtering.set_forwarding_type",
+          "handle": 536870938,
+          "primitives": [
+            {
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricIngress.filtering.fwd_classifier_counter"
+              }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.fwd_type" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "action_param", "name": "fwd_type" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.next_id" },
+              "dst_mask": { "type": "immediate", "name": "16777215" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "compiler_generated_meta.mirror_id" },
+              "dst_mask": { "type": "immediate", "name": "1023" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "compiler_generated_meta.mirror_source" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "ig_intr_md_for_dprsr.drop_ctl" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "immediate", "name": "0" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "fwd_type",
+              "start_bit": 0,
+              "position": 0,
+              "default_value": "0x0",
+              "bit_width": 3
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108866,
+      "name": "FabricIngress.filtering.fwd_classifier_counter",
+      "table_type": "statistics",
+      "size": 1024,
+      "stage_tables": [
+        {
+          "stage_number": 5,
+          "size": 1024,
+          "stage_table_type": "statistics",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 78 ], "vpns": [ 0 ] } ],
+            "spare_bank_memory_unit": 79
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 64,
+      "packet_counter_resolution": 64,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554439,
+      "name": "FabricIngress.filtering.fwd_classifier$action",
+      "table_type": "action",
+      "size": 16384,
+      "stage_tables": [
+        {
+          "stage_number": 5,
+          "size": 16384,
+          "stage_table_type": "action_data",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 16,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 15,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 14,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 112,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 13,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 104,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 107,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 12,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 99,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 11,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 10,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 9,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 72,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 75,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 8,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 67,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 7,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 6,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 5,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 40,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 43,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 4,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 35,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 3,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 2,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 11,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 3,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870938
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricIngress.filtering.set_forwarding_type",
+          "handle": 536870938,
+          "p4_parameters": [
+            {
+              "name": "fwd_type",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 3
+            }
+          ]
+        }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777228,
+      "name": "tbl_act_5",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -144165,9 +128881,9 @@
             "stage_number": 5,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 5,
-            "has_attached_gateway": true,
-            "default_next_table": 87,
+            "logical_table_id": 3,
+            "has_attached_gateway": false,
+            "default_next_table": 84,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -145020,17 +129736,17 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "FabricEgress.egress_next.set_mpls",
-                  "action_handle": 536870975,
+                  "action_name": "act_5",
+                  "action_handle": 536870965,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 87,
-                  "vliw_instruction": 1,
+                  "next_table_full": 84,
+                  "vliw_instruction": 0,
                   "vliw_instruction_full": 68,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_20",
-                      "next_table_logical_id": 7,
+                      "next_table_name": "tbl_act_4",
+                      "next_table_logical_id": 4,
                       "next_table_stage_no": 5
                     }
                   ],
@@ -145049,47 +129765,15 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "FabricEgress.egress_next.set_mpls",
-          "handle": 536870975,
+          "name": "act_5",
+          "handle": 536870965,
           "primitives": [
             {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.mpls.$valid" }
-            },
-            {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.mpls.label" },
-              "dst_mask": { "type": "immediate", "name": "1048575" },
-              "src1": { "type": "phv", "name": "fabric_metadata.mpls_label" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.mpls.tc" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.mpls.bos" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.mpls.ttl" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.mpls_ttl" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.eth_type.value" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "immediate", "name": "0x8847" }
+              "dst": { "type": "phv", "name": "ig_intr_md_from_prsr.global_tstamp" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "ig_intr_md_from_prsr.global_tstamp" }
             }
           ],
           "indirect_resources": [],
@@ -145110,7 +129794,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870975,
+      "default_action_handle": 536870965,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -145121,9 +129805,9 @@
       "static_entries": []
     },
     {
-      "direction": "egress",
-      "handle": 16777266,
-      "name": "tbl_egress_next_pop_mpls_if_present",
+      "direction": "ingress",
+      "handle": 16777229,
+      "name": "tbl_act_4",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -145132,9 +129816,9 @@
             "stage_number": 5,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 6,
+            "logical_table_id": 4,
             "has_attached_gateway": true,
-            "default_next_table": 87,
+            "default_next_table": 96,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -145987,18 +130671,18 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "FabricEgress.egress_next.pop_mpls_if_present",
-                  "action_handle": 536870974,
+                  "action_name": "act_4",
+                  "action_handle": 536870934,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 87,
+                  "next_table_full": 96,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 70,
+                  "vliw_instruction_full": 69,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_20",
-                      "next_table_logical_id": 7,
-                      "next_table_stage_no": 5
+                      "next_table_name": "FabricIngress.filtering.ingress_port_vlan",
+                      "next_table_logical_id": 0,
+                      "next_table_stage_no": 6
                     }
                   ],
                   "immediate_fields": []
@@ -146016,19 +130700,15 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "FabricEgress.egress_next.pop_mpls_if_present",
-          "handle": 536870974,
+          "name": "act_4",
+          "handle": 536870934,
           "primitives": [
             {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.mpls.$valid" }
-            },
-            {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.eth_type.value" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.ip_eth_type" }
+              "dst": { "type": "phv", "name": "fabric_metadata.mpls_ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "65" }
             }
           ],
           "indirect_resources": [],
@@ -146049,7 +130729,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870974,
+      "default_action_handle": 536870934,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -146060,45 +130740,4678 @@
       "static_entries": []
     },
     {
-      "direction": "egress",
-      "attached_to": "tbl_egress_next_pop_mpls_if_present",
-      "handle": 1879048217,
-      "name": "cond-23",
+      "direction": "ingress",
+      "attached_to": "tbl_act_4",
+      "handle": 1879048208,
+      "name": "cond-7",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 87, "true": 86 },
+          "next_tables": { "false": 96, "true": 84 },
           "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
-            "false": "tbl_act_20",
-            "true": "tbl_egress_next_pop_mpls_if_present"
+            "false": "FabricIngress.filtering.ingress_port_vlan",
+            "true": "tbl_act_4"
           },
-          "logical_table_id": 6,
+          "logical_table_id": 4,
           "stage_number": 5,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.mpls.$valid", "start_bit": 0, "bit_width": 1 } ],
-      "condition": "(hdr.mpls.$valid == 1)",
+      "condition_fields": [ { "name": "hdr.mpls.$valid", "start_bit": 6, "bit_width": 1 } ],
+      "condition": "(!(hdr.mpls.$valid == 1))",
       "size": 0
     },
     {
       "direction": "egress",
-      "handle": 16777267,
-      "name": "tbl_act_20",
+      "handle": 16777250,
+      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+      "table_type": "match",
+      "size": 1024,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554445,
+          "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536871019,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "hdr.int_header.instruction_mask_0407",
+          "start_bit": 0,
+          "bit_width": 4,
+          "bit_width_full": 4,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "hdr.int_header",
+          "field_name": "instruction_mask_0407"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 5,
+            "size": 1024,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 5,
+            "has_attached_gateway": false,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "hdr.int_header.instruction_mask_0407",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "hdr.int_header.instruction_mask_0407",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "hdr.int_header.instruction_mask_0407",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "hdr.int_header.instruction_mask_0407",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 0
+                  }
+                ],
+                "hash_function_number": 0,
+                "ghost_bit_to_hash_bit": [ [ 0 ], [ 1 ], [ 2 ], [ 3 ] ],
+                "ghost_bit_info": [
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0407",
+                    "bit_in_match_spec": 0
+                  },
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0407",
+                    "bit_in_match_spec": 1
+                  },
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0407",
+                    "bit_in_match_spec": 2
+                  },
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0407",
+                    "bit_in_match_spec": 3
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536871019,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 4294967295,
+                "next_table_full": 97,
+                "vliw_instruction": -1,
+                "vliw_instruction_full": 67,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
+                "action_handle": 536871003,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 64,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
+                "action_handle": 536871004,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 65,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
+                "action_handle": 536871005,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
+                "action_handle": 536871006,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 4,
+                "vliw_instruction_full": 68,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
+                "action_handle": 536871007,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 6,
+                "vliw_instruction_full": 70,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
+                "action_handle": 536871008,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 8,
+                "vliw_instruction_full": 72,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
+                "action_handle": 536871009,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 10,
+                "vliw_instruction_full": 74,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
+                "action_handle": 536871010,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 12,
+                "vliw_instruction_full": 76,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
+                "action_handle": 536871011,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 14,
+                "vliw_instruction_full": 78,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
+                "action_handle": 536871012,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 16,
+                "vliw_instruction_full": 80,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
+                "action_handle": 536871013,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 18,
+                "vliw_instruction_full": 82,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
+                "action_handle": 536871014,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 20,
+                "vliw_instruction_full": 84,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
+                "action_handle": 536871015,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 22,
+                "vliw_instruction_full": 86,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+                "action_handle": 536871016,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 24,
+                "vliw_instruction_full": 88,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+                "action_handle": 536871017,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 26,
+                "vliw_instruction_full": 90,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+                "action_handle": 536871018,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 28,
+                "vliw_instruction_full": 92,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_16",
+                    "param_type": "constant",
+                    "const_value": 16,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 16,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 6,
+                          "field_name": "immediate",
+                          "match_mode": "unused"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 6,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action",
+                          "match_mode": "unused"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 28,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 29,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 5,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 6,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 16,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 6,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 90,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 22,
+                            "field_name": "--padding_22_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536871019,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
+          "handle": 536871003,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
+          "handle": 536871004,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
+          "handle": 536871005,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
+          "handle": 536871006,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
+          "handle": 536871007,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
+          "handle": 536871008,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
+          "handle": 536871009,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
+          "handle": 536871010,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
+          "handle": 536871011,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
+          "handle": 536871012,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
+          "handle": 536871013,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
+          "handle": 536871014,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
+          "handle": 536871015,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+          "handle": 536871016,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+          "handle": 536871017,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+          "handle": 536871018,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "4" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "16" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": [
+        {
+          "priority": 0,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x0"
+            }
+          ],
+          "action_handle": 536871003,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 1,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x1"
+            }
+          ],
+          "action_handle": 536871004,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 2,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x2"
+            }
+          ],
+          "action_handle": 536871005,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 3,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x3"
+            }
+          ],
+          "action_handle": 536871006,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 4,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x4"
+            }
+          ],
+          "action_handle": 536871007,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 5,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x5"
+            }
+          ],
+          "action_handle": 536871008,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 6,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x6"
+            }
+          ],
+          "action_handle": 536871009,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 7,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x7"
+            }
+          ],
+          "action_handle": 536871010,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 8,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x8"
+            }
+          ],
+          "action_handle": 536871011,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 9,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x9"
+            }
+          ],
+          "action_handle": 536871012,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 10,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0xa"
+            }
+          ],
+          "action_handle": 536871013,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 11,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0xb"
+            }
+          ],
+          "action_handle": 536871014,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 12,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0xc"
+            }
+          ],
+          "action_handle": 536871015,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 13,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0xd"
+            }
+          ],
+          "action_handle": 536871016,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 14,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0xe"
+            }
+          ],
+          "action_handle": 536871017,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 15,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0xf"
+            }
+          ],
+          "action_handle": 536871018,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        }
+      ]
+    },
+    {
+      "direction": "egress",
+      "handle": 33554445,
+      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407$action",
+      "table_type": "action",
+      "size": 2048,
+      "stage_tables": [
+        {
+          "stage_number": 5,
+          "size": 2048,
+          "stage_table_type": "action_data",
+          "logical_table_id": 5,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871003
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871004
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "--padding_22_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "--padding_26_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 118,
+                      "field_name": "--padding_54_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 6,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 122,
+                      "field_name": "--padding_58_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "--padding_22_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "--padding_26_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 54,
+                      "field_name": "--padding_54_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 6,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 58,
+                      "field_name": "--padding_58_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871013
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "--padding_22_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 118,
+                      "field_name": "--padding_54_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "--padding_22_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 54,
+                      "field_name": "--padding_54_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871014
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871015
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 122,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "--padding_23_25--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "--padding_55_57--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 58,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "--padding_23_25--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "--padding_55_57--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871016
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "--padding_26_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 6,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 122,
+                      "field_name": "--padding_58_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "--padding_26_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 6,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 58,
+                      "field_name": "--padding_58_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871017
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871018
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871005
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871006
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871007
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 118,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 122,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 22,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_21--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "--padding_23_25--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_27_53--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "--padding_55_57--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 54,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 58,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 22,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_21--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "--padding_23_25--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_27_53--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "--padding_55_57--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871008
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 118,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 22,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_21--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 28,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "--padding_26_53--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 6,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 122,
+                      "field_name": "--padding_58_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 54,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 22,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_21--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 28,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "--padding_26_53--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 6,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 58,
+                      "field_name": "--padding_58_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871009
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 118,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 22,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_21--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_27_53--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 54,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 22,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_21--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_27_53--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871010
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871011
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 122,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "--padding_22_25--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 118,
+                      "field_name": "--padding_54_57--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 58,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "--padding_22_25--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 54,
+                      "field_name": "--padding_54_57--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871012
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871019
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 0 ] } ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
+          "handle": 536871003,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
+          "handle": 536871004,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
+          "handle": 536871013,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
+          "handle": 536871014,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
+          "handle": 536871015,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+          "handle": 536871016,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+          "handle": 536871017,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+          "handle": 536871018,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
+          "handle": 536871005,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
+          "handle": 536871006,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
+          "handle": 536871007,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
+          "handle": 536871008,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
+          "handle": 536871009,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
+          "handle": 536871010,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
+          "handle": 536871011,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
+          "handle": 536871012,
+          "p4_parameters": []
+        },
+        { "name": "NoAction", "handle": 536871019, "p4_parameters": [] }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777230,
+      "name": "FabricIngress.filtering.ingress_port_vlan",
+      "table_type": "match",
+      "size": 2048,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 6,
+            "size": 2048,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": false,
+            "default_next_table": 112,
+            "pack_format": [
+              {
+                "table_word_width": 47,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "vlan_is_valid",
+                        "lsb_mem_word_offset": 4,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "ig_port",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "ig_port",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "vlan_id",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "vlan_id",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 3
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 5,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 10,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 7
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 29,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [
+                { "memory_units": [ 0 ], "vpns": [ 0 ] },
+                { "memory_units": [ 1 ], "vpns": [ 1 ] },
+                { "memory_units": [ 2 ], "vpns": [ 2 ] },
+                { "memory_units": [ 3 ], "vpns": [ 3 ] }
+              ],
+              "spare_bank_memory_unit": 3
+            },
+            "result_physical_buses": [ 0 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 6,
+              "stage_table_type": "ternary_indirection",
+              "size": 4096,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 4,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 16,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 98,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 14,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 114,
+                          "field_name": "--padding_18_31--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 16,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 66,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 14,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 82,
+                          "field_name": "--padding_18_31--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 16,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 34,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 14,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 50,
+                          "field_name": "--padding_18_31--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 16,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 2,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 14,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 18,
+                          "field_name": "--padding_18_31--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": {
+                "memory_type": "sram",
+                "memory_units_and_vpns": [ { "memory_units": [ 2 ], "vpns": [ 0 ] } ],
+                "spare_bank_memory_unit": 2
+              },
+              "action_format": [
+                {
+                  "action_name": "FabricIngress.filtering.deny",
+                  "action_handle": 536870935,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 112,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 65,
+                  "next_tables": [
+                    {
+                      "next_table_name": "",
+                      "next_table_logical_id": 0,
+                      "next_table_stage_no": 7
+                    }
+                  ],
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "FabricIngress.filtering.permit",
+                  "action_handle": 536870936,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 112,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 64,
+                  "next_tables": [
+                    {
+                      "next_table_name": "",
+                      "next_table_logical_id": 0,
+                      "next_table_stage_no": 7
+                    }
+                  ],
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "FabricIngress.filtering.permit_with_internal_vlan",
+                  "action_handle": 536870937,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 112,
+                  "vliw_instruction": 2,
+                  "vliw_instruction_full": 66,
+                  "next_tables": [
+                    {
+                      "next_table_name": "",
+                      "next_table_logical_id": 0,
+                      "next_table_stage_no": 7
+                    }
+                  ],
+                  "immediate_fields": [
+                    {
+                      "param_name": "vlan_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 8,
+                      "dest_width": 8
+                    },
+                    {
+                      "param_name": "vlan_id",
+                      "param_type": "parameter",
+                      "param_shift": 8,
+                      "dest_start": 0,
+                      "dest_width": 4
+                    }
+                  ]
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108867,
+          "name": "FabricIngress.filtering.ingress_port_vlan_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "FabricIngress.filtering.deny",
+          "handle": 536870935,
+          "primitives": [
+            {
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricIngress.filtering.ingress_port_vlan_counter"
+              }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_forwarding" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_next" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.filtering.permit",
+          "handle": 536870936,
+          "primitives": [
+            {
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricIngress.filtering.ingress_port_vlan_counter"
+              }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.filtering.permit_with_internal_vlan",
+          "handle": 536870937,
+          "primitives": [
+            {
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricIngress.filtering.ingress_port_vlan_counter"
+              }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.vlan_id" },
+              "dst_mask": { "type": "immediate", "name": "4095" },
+              "src1": { "type": "action_param", "name": "vlan_id" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "vlan_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 12
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536870935,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ig_port",
+          "global_name": "ig_intr_md.ingress_port",
+          "start_bit": 0,
+          "bit_width": 9,
+          "bit_width_full": 9,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "ig_intr_md",
+          "field_name": "ingress_port"
+        },
+        {
+          "name": "vlan_is_valid",
+          "global_name": "hdr.vlan_tag.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 1,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.vlan_tag",
+          "field_name": "$valid"
+        },
+        {
+          "name": "vlan_id",
+          "global_name": "hdr.vlan_tag.vlan_id",
+          "start_bit": 0,
+          "bit_width": 12,
+          "bit_width_full": 12,
+          "position": 2,
+          "match_type": "ternary",
+          "is_valid": false,
+          "instance_name": "hdr.vlan_tag",
+          "field_name": "vlan_id"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108867,
+      "name": "FabricIngress.filtering.ingress_port_vlan_counter",
+      "table_type": "statistics",
+      "size": 2048,
+      "stage_tables": [
+        {
+          "stage_number": 6,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 64,
+      "packet_counter_resolution": 64,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "egress",
+      "handle": 16777251,
+      "name": "tbl_act_18",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 5,
+            "stage_number": 6,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 7,
+            "logical_table_id": 1,
             "has_attached_gateway": true,
-            "default_next_table": 88,
+            "default_next_table": 98,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -146133,9 +135446,1925 @@
               }
             ],
             "memory_resource_allocation": null,
-            "result_physical_buses": [ 0 ],
+            "result_physical_buses": [ 5 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 5,
+              "stage_number": 6,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "act_17",
+                  "action_handle": 536871021,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 98,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 65,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_19",
+                      "next_table_logical_id": 2,
+                      "next_table_stage_no": 6
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "act_17",
+          "handle": 536871021,
+          "primitives": [
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "src2": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536871021,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_18",
+      "handle": 1879048209,
+      "name": "cond-30",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 98, "true": 97 },
+          "memory_resource_allocation": { "memory_unit": 4, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "tbl_act_19", "true": "tbl_act_18" },
+          "logical_table_id": 1,
+          "stage_number": 6,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [ { "name": "hdr.ipv4.$valid", "start_bit": 0, "bit_width": 1 } ],
+      "condition": "(hdr.ipv4.$valid == 1)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 16777252,
+      "name": "tbl_act_19",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 6,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": true,
+            "default_next_table": 99,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 4 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 6,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "act_19",
+                  "action_handle": 536871022,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 99,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 66,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_20",
+                      "next_table_logical_id": 3,
+                      "next_table_stage_no": 6
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "act_19",
+          "handle": 536871022,
+          "primitives": [
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.udp.len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.udp.len" },
+              "src2": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536871022,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_19",
+      "handle": 1879048210,
+      "name": "cond-31",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 99, "true": 98 },
+          "memory_resource_allocation": { "memory_unit": 3, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "tbl_act_20", "true": "tbl_act_19" },
+          "logical_table_id": 2,
+          "stage_number": 6,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [ { "name": "hdr.udp.$valid", "start_bit": 5, "bit_width": 1 } ],
+      "condition": "(hdr.udp.$valid == 1)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 16777253,
+      "name": "tbl_act_20",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 6,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 3,
+            "has_attached_gateway": true,
+            "default_next_table": 100,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 3 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 6,
               "stage_table_type": "ternary_indirection",
               "size": 0,
               "pack_format": [
@@ -146952,3726 +138181,16 @@
               "action_format": [
                 {
                   "action_name": "act_20",
-                  "action_handle": 536870973,
+                  "action_handle": 536871023,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 88,
+                  "next_table_full": 100,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 69,
+                  "vliw_instruction_full": 67,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_25",
-                      "next_table_logical_id": 8,
-                      "next_table_stage_no": 5
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_20",
-          "handle": 536870973,
-          "primitives": [
-            {
-              "name": "DropPrimitive",
-              "dst": { "type": "phv", "name": "eg_intr_md_for_dprsr.drop_ctl" },
-              "src1": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870973,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_act_20",
-      "handle": 1879048218,
-      "name": "cond-21",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 88, "true": 87 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_25", "true": "tbl_act_20" },
-          "logical_table_id": 7,
-          "stage_number": 5,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        { "name": "ig_intr_md.ingress_port", "start_bit": 0, "bit_width": 8 },
-        { "name": "ig_intr_md.ingress_port", "start_bit": 8, "bit_width": 1 },
-        {
-          "name": "fabric_metadata.is_multicast",
-          "start_bit": 17,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(fabric_metadata.is_multicast == 1 && ig_intr_md.ingress_port == eg_intr_md.egress_port)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777268,
-      "name": "tbl_act_25",
-      "table_type": "match",
-      "size": 8388608,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 5,
-            "size": 1,
-            "stage_table_type": "match_with_no_key",
-            "logical_table_id": 8,
-            "has_attached_gateway": true,
-            "memory_resource_allocation": null,
-            "default_next_table": 255,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 0,
-                "entries_per_table_word": 0,
-                "number_memory_units_per_table_word": 0
-              }
-            ],
-            "result_physical_buses": [ 0 ],
-            "action_format": [
-              {
-                "action_name": "act_25",
-                "action_handle": 536870983,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 255,
-                "vliw_instruction": 0,
-                "vliw_instruction_full": 64,
-                "next_tables": [],
-                "immediate_fields": []
-              }
-            ]
-          }
-        ],
-        "match_type": "match_with_no_key"
-      },
-      "actions": [
-        {
-          "name": "act_25",
-          "handle": 536870983,
-          "primitives": [
-            {
-              "name": "CountFromHashPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricEgress.spgw_egress.pdr_counter"
-              },
-              "idx": {
-                "type": "hash",
-                "name": "hash_FabricEgress.spgw_egress.pdr_counter",
-                "algorithm": "identity"
-              },
-              "hash_inputs": [ "fabric_metadata.spgw.ctr_id" ]
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": true,
-          "override_stat_addr_pfe": true,
-          "override_stat_full_addr": 524288,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870983,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [
-        {
-          "how_referenced": "indirect",
-          "handle": 67108877,
-          "name": "FabricEgress.spgw_egress.pdr_counter"
-        }
-      ],
-      "stateful_table_refs": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_act_25",
-      "handle": 1879048219,
-      "name": "tbl_act_25-gateway",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 89, "true": 89 },
-          "memory_resource_allocation": { "memory_unit": 5, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "FabricEgress.egress_next.egress_vlan",
-            "true": "FabricEgress.egress_next.egress_vlan"
-          },
-          "logical_table_id": 8,
-          "stage_number": 5,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [],
-      "condition": "true(always hit)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 67108877,
-      "name": "FabricEgress.spgw_egress.pdr_counter",
-      "table_type": "statistics",
-      "size": 1024,
-      "stage_tables": [
-        {
-          "stage_number": 5,
-          "size": 1024,
-          "stage_table_type": "statistics",
-          "logical_table_id": 8,
-          "pack_format": [
-            {
-              "table_word_width": 128,
-              "memory_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 54 ], "vpns": [ 0 ] } ],
-            "spare_bank_memory_unit": 55
-          },
-          "stats_alu_index": 2
-        }
-      ],
-      "how_referenced": "indirect",
-      "enable_pfe": false,
-      "pfe_bit_position": 0,
-      "byte_counter_resolution": 64,
-      "packet_counter_resolution": 64,
-      "statistics_type": "packets_and_bytes"
-    },
-    {
-      "direction": "egress",
-      "handle": 16777269,
-      "name": "FabricEgress.egress_next.egress_vlan",
-      "table_type": "match",
-      "size": 2048,
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 67108878,
-          "name": "FabricEgress.egress_next.egress_vlan_counter"
-        }
-      ],
-      "stateful_table_refs": [],
-      "default_action_handle": 536870977,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "vlan_id",
-          "global_name": "fabric_metadata.vlan_id",
-          "start_bit": 0,
-          "bit_width": 12,
-          "bit_width_full": 12,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "fabric_metadata",
-          "field_name": "vlan_id"
-        },
-        {
-          "name": "eg_port",
-          "global_name": "eg_intr_md.egress_port",
-          "start_bit": 0,
-          "bit_width": 9,
-          "bit_width_full": 9,
-          "position": 1,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "eg_intr_md",
-          "field_name": "egress_port"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 5,
-            "size": 4096,
-            "stage_table_type": "hash_match",
-            "logical_table_id": 9,
-            "has_attached_gateway": false,
-            "default_next_table": 255,
-            "hash_functions": [
-              {
-                "hash_bits": [
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 5,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      }
-                    ],
-                    "hash_bit": 8,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 11,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 12,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 15,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 16,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 20,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      }
-                    ],
-                    "hash_bit": 21,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 22,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 23,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 25,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 30,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 31,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 34,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 35,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 36,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 37,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 38,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 39,
-                    "seed": 0
-                  }
-                ],
-                "hash_function_number": 2,
-                "ghost_bit_to_hash_bit": [
-                  [ 1, 12, 23, 34 ],
-                  [ 2, 13, 24, 35 ],
-                  [ 3, 14, 25, 36 ],
-                  [ 4, 15, 26, 37 ],
-                  [ 5, 16, 27, 38 ],
-                  [ 0, 11, 22, 33 ],
-                  [ 6, 17, 28, 39 ],
-                  [ 7, 18, 29, 30 ],
-                  [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ]
-                ],
-                "ghost_bit_info": [
-                  { "field_name": "eg_port", "bit_in_match_spec": 0 },
-                  { "field_name": "eg_port", "bit_in_match_spec": 1 },
-                  { "field_name": "eg_port", "bit_in_match_spec": 2 },
-                  { "field_name": "eg_port", "bit_in_match_spec": 3 },
-                  { "field_name": "eg_port", "bit_in_match_spec": 4 },
-                  { "field_name": "eg_port", "bit_in_match_spec": 8 },
-                  { "field_name": "vlan_id", "bit_in_match_spec": 8 },
-                  { "field_name": "vlan_id", "bit_in_match_spec": 9 },
-                  { "field_name": "vlan_id", "bit_in_match_spec": 10 },
-                  { "field_name": "vlan_id", "bit_in_match_spec": 11 }
-                ]
-              }
-            ],
-            "action_format": [
-              {
-                "action_name": "nop",
-                "action_handle": 536870977,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 4294967295,
-                "next_table_full": 90,
-                "vliw_instruction": -1,
-                "vliw_instruction_full": 64,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_egress_next_push_vlan",
-                    "next_table_logical_id": 10,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.egress_next.pop_vlan",
-                "action_handle": 536870976,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 90,
-                "vliw_instruction": 0,
-                "vliw_instruction_full": 71,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_21",
-                    "next_table_logical_id": 1,
-                    "next_table_stage_no": 6
-                  }
-                ],
-                "immediate_fields": []
-              }
-            ],
-            "result_physical_buses": [ 14 ],
-            "pack_format": [
-              {
-                "memory_word_width": 128,
-                "table_word_width": 128,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1
-              }
-            ],
-            "memory_resource_allocation": null,
-            "stash_allocation": {
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "field_name": "eg_port",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 45,
-                          "start_bit": 5,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 3
-                        },
-                        {
-                          "field_name": "vlan_id",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 32,
-                          "start_bit": 0,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "num_stash_entries": 2,
-              "stash_entries": [
-                [
-                  {
-                    "stash_entry_id": 28,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ],
-                [
-                  {
-                    "stash_entry_id": 29,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ]
-              ]
-            },
-            "ways": [
-              {
-                "stage_number": 5,
-                "way_number": 0,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "eg_port",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 45,
-                            "start_bit": 5,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 3
-                          },
-                          {
-                            "field_name": "vlan_id",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 5,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 40,
-                            "field_name": "--padding_40_44--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 64,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 0,
-                  "hash_entry_bit_hi": 9,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
-                }
-              },
-              {
-                "stage_number": 5,
-                "way_number": 1,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "eg_port",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 45,
-                            "start_bit": 5,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 3
-                          },
-                          {
-                            "field_name": "vlan_id",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 5,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 40,
-                            "field_name": "--padding_40_44--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 64,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 10,
-                  "hash_entry_bit_hi": 19,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
-                }
-              },
-              {
-                "stage_number": 5,
-                "way_number": 2,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "eg_port",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 45,
-                            "start_bit": 5,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 3
-                          },
-                          {
-                            "field_name": "vlan_id",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 5,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 40,
-                            "field_name": "--padding_40_44--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 64,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 20,
-                  "hash_entry_bit_hi": 29,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
-                }
-              },
-              {
-                "stage_number": 5,
-                "way_number": 3,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "eg_port",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 45,
-                            "start_bit": 5,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 3
-                          },
-                          {
-                            "field_name": "vlan_id",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 5,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 40,
-                            "field_name": "--padding_40_44--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 64,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 30,
-                  "hash_entry_bit_hi": 39,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 89 ], "vpns": [ 3 ] } ]
-                }
-              }
-            ]
-          }
-        ],
-        "match_type": "exact",
-        "uses_dynamic_key_masks": false
-      },
-      "actions": [
-        {
-          "name": "nop",
-          "handle": 536870977,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.egress_next.pop_vlan",
-          "handle": 536870976,
-          "primitives": [
-            {
-              "name": "CountPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricEgress.egress_next.egress_vlan_counter"
-              }
-            },
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.vlan_tag.$valid" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": false,
-          "disallowed_as_default_action_reason": "has_const_default",
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "handle": 67108878,
-      "name": "FabricEgress.egress_next.egress_vlan_counter",
-      "table_type": "statistics",
-      "size": 4096,
-      "stage_tables": [
-        {
-          "stage_number": 5,
-          "size": 4096,
-          "stage_table_type": "statistics",
-          "logical_table_id": 9,
-          "pack_format": [
-            {
-              "table_word_width": 128,
-              "memory_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [
-              { "memory_units": [ 78 ], "vpns": [ 0 ] },
-              { "memory_units": [ 79 ], "vpns": [ 1 ] },
-              { "memory_units": [ 80 ], "vpns": [ 2 ] },
-              { "memory_units": [ 81 ], "vpns": [ 3 ] }
-            ],
-            "spare_bank_memory_unit": 82
-          },
-          "stats_alu_index": 3
-        }
-      ],
-      "how_referenced": "direct",
-      "enable_pfe": false,
-      "pfe_bit_position": 0,
-      "byte_counter_resolution": 64,
-      "packet_counter_resolution": 64,
-      "statistics_type": "packets_and_bytes"
-    },
-    {
-      "direction": "egress",
-      "handle": 16777270,
-      "name": "tbl_egress_next_push_vlan",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 5,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 10,
-            "has_attached_gateway": true,
-            "default_next_table": 97,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 6 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 5,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "FabricEgress.egress_next.push_vlan",
-                  "action_handle": 536870978,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 97,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 72,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_21",
-                      "next_table_logical_id": 1,
+                      "next_table_name": "tbl_egress_next_set_mpls",
+                      "next_table_logical_id": 4,
                       "next_table_stage_no": 6
                     }
                   ],
@@ -150690,1971 +138209,16 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "FabricEgress.egress_next.push_vlan",
-          "handle": 536870978,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.vlan_tag.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.vlan_tag.cfi" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "phv", "name": "fabric_metadata.vlan_cfi" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.vlan_tag.pri" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "phv", "name": "fabric_metadata.vlan_pri" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.vlan_tag.eth_type" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "immediate", "name": "0x8100" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.vlan_tag.vlan_id" },
-              "dst_mask": { "type": "immediate", "name": "4095" },
-              "src1": { "type": "phv", "name": "fabric_metadata.vlan_id" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870978,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_egress_next_push_vlan",
-      "handle": 1879048220,
-      "name": "cond-24",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 97, "true": 90 },
-          "memory_resource_allocation": { "memory_unit": 4, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_21", "true": "tbl_egress_next_push_vlan" },
-          "logical_table_id": 10,
-          "stage_number": 5,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        { "name": "fabric_metadata.vlan_id", "start_bit": 0, "bit_width": 8 },
-        { "name": "fabric_metadata.vlan_id", "start_bit": 8, "bit_width": 4 }
-      ],
-      "condition": "(fabric_metadata.vlan_id != 4094)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777242,
-      "name": "tbl_act_14",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 6,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 0,
-            "has_attached_gateway": true,
-            "default_next_table": 112,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 1 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 6,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_14",
-                  "action_handle": 536870941,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 112,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 7
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_14",
-          "handle": 536870941,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.skip_forwarding" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.skip_next" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870941,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_14",
-      "handle": 1879048221,
-      "name": "cond-13",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 112, "true": 96 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "", "true": "tbl_act_14" },
-          "logical_table_id": 0,
-          "stage_number": 6,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "fabric_metadata.spgw.far_dropped",
-          "start_bit": 3,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(fabric_metadata.spgw.far_dropped == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777271,
-      "name": "tbl_act_21",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 6,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 1,
-            "has_attached_gateway": true,
-            "default_next_table": 117,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 0 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 6,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_22",
-                  "action_handle": 536870979,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 117,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_22",
-                      "next_table_logical_id": 5,
-                      "next_table_stage_no": 7
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_22",
-          "handle": 536870979,
+          "name": "act_20",
+          "handle": 536871023,
           "primitives": [
             {
               "name": "DirectAluPrimitive",
               "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.mpls.ttl" },
+              "dst": { "type": "phv", "name": "hdr.intl4_shim.len_words" },
               "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.mpls.ttl" },
-              "src2": { "type": "immediate", "name": "255" }
+              "src1": { "type": "phv", "name": "hdr.intl4_shim.len_words" },
+              "src2": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" }
             }
           ],
           "indirect_resources": [],
@@ -152675,7 +138239,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870979,
+      "default_action_handle": 536871023,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -152687,30 +138251,30 @@
     },
     {
       "direction": "egress",
-      "attached_to": "tbl_act_21",
-      "handle": 1879048222,
-      "name": "cond-25",
+      "attached_to": "tbl_act_20",
+      "handle": 1879048211,
+      "name": "cond-32",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 98, "true": 97 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 100, "true": 99 },
+          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "tbl_act_23", "true": "tbl_act_21" },
-          "logical_table_id": 1,
+          "next_table_names": { "false": "tbl_egress_next_set_mpls", "true": "tbl_act_20" },
+          "logical_table_id": 3,
           "stage_number": 6,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.mpls.$valid", "start_bit": 0, "bit_width": 1 } ],
-      "condition": "(hdr.mpls.$valid == 1)",
+      "condition_fields": [ { "name": "hdr.intl4_shim.$valid", "start_bit": 2, "bit_width": 1 } ],
+      "condition": "(hdr.intl4_shim.$valid == 1)",
       "size": 0
     },
     {
       "direction": "egress",
-      "handle": 16777272,
-      "name": "tbl_act_23",
+      "handle": 16777254,
+      "name": "tbl_egress_next_set_mpls",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -152719,9 +138283,9 @@
             "stage_number": 6,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 2,
+            "logical_table_id": 4,
             "has_attached_gateway": true,
-            "default_next_table": 116,
+            "default_next_table": 102,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -153574,18 +139138,18 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_24",
-                  "action_handle": 536870981,
+                  "action_name": "FabricEgress.egress_next.set_mpls",
+                  "action_handle": 536870971,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 116,
+                  "next_table_full": 102,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
+                  "vliw_instruction_full": 68,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_24",
-                      "next_table_logical_id": 4,
-                      "next_table_stage_no": 7
+                      "next_table_name": "tbl_act_9",
+                      "next_table_logical_id": 6,
+                      "next_table_stage_no": 6
                     }
                   ],
                   "immediate_fields": []
@@ -153603,16 +139167,47 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_24",
-          "handle": 536870981,
+          "name": "FabricEgress.egress_next.set_mpls",
+          "handle": 536870971,
           "primitives": [
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.mpls.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.mpls.label" },
+              "dst_mask": { "type": "immediate", "name": "1048575" },
+              "src1": { "type": "phv", "name": "fabric_metadata.mpls_label" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.mpls.tc" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.mpls.bos" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.mpls.ttl" },
               "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.ttl" },
-              "src2": { "type": "immediate", "name": "255" }
+              "src1": { "type": "phv", "name": "fabric_metadata.mpls_ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.eth_type.value" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x8847" }
             }
           ],
           "indirect_resources": [],
@@ -153633,7 +139228,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870981,
+      "default_action_handle": 536870971,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -153645,36 +139240,1985 @@
     },
     {
       "direction": "egress",
-      "attached_to": "tbl_act_23",
-      "handle": 1879048223,
-      "name": "cond-27",
+      "attached_to": "tbl_egress_next_set_mpls",
+      "handle": 1879048212,
+      "name": "cond-16",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 255, "true": 98 },
-          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 100, "true": 101 },
+          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "END", "true": "tbl_act_23" },
-          "logical_table_id": 2,
+          "next_table_names": {
+            "false": "tbl_egress_next_set_mpls",
+            "true": "tbl_egress_next_pop_mpls_if_present"
+          },
+          "logical_table_id": 4,
           "stage_number": 6,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.ipv4.$valid", "start_bit": 5, "bit_width": 1 } ],
-      "condition": "(hdr.ipv4.$valid == 1)",
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.mpls_label.0-3",
+          "start_bit": 4,
+          "bit_width": 4
+        },
+        {
+          "name": "fabric_metadata.mpls_label.4-19",
+          "start_bit": 8,
+          "bit_width": 8
+        },
+        {
+          "name": "fabric_metadata.mpls_label.4-19",
+          "start_bit": 16,
+          "bit_width": 8
+        }
+      ],
+      "condition": "(fabric_metadata.mpls_label == 0)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 16777255,
+      "name": "tbl_egress_next_pop_mpls_if_present",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 6,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 5,
+            "has_attached_gateway": true,
+            "default_next_table": 102,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 1 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 6,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "FabricEgress.egress_next.pop_mpls_if_present",
+                  "action_handle": 536870970,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 102,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 70,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_9",
+                      "next_table_logical_id": 6,
+                      "next_table_stage_no": 6
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "FabricEgress.egress_next.pop_mpls_if_present",
+          "handle": 536870970,
+          "primitives": [
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.mpls.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.eth_type.value" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.ip_eth_type" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536870970,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_egress_next_pop_mpls_if_present",
+      "handle": 1879048213,
+      "name": "cond-17",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 102, "true": 101 },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "tbl_act_9",
+            "true": "tbl_egress_next_pop_mpls_if_present"
+          },
+          "logical_table_id": 5,
+          "stage_number": 6,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [ { "name": "hdr.mpls.$valid", "start_bit": 7, "bit_width": 1 } ],
+      "condition": "(hdr.mpls.$valid == 1)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 16777256,
+      "name": "tbl_act_9",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 6,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 6,
+            "has_attached_gateway": true,
+            "default_next_table": 116,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 6 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 6,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "act_9",
+                  "action_handle": 536870969,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 116,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 69,
+                  "next_tables": [
+                    {
+                      "next_table_name": "FabricEgress.egress_next.egress_vlan",
+                      "next_table_logical_id": 4,
+                      "next_table_stage_no": 7
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "act_9",
+          "handle": 536870969,
+          "primitives": [
+            {
+              "name": "DropPrimitive",
+              "dst": { "type": "phv", "name": "eg_intr_md_for_dprsr.drop_ctl" },
+              "src1": { "type": "immediate", "name": "1" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536870969,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_9",
+      "handle": 1879048214,
+      "name": "cond-15",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 116, "true": 102 },
+          "memory_resource_allocation": { "memory_unit": 5, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "FabricEgress.egress_next.egress_vlan",
+            "true": "tbl_act_9"
+          },
+          "logical_table_id": 6,
+          "stage_number": 6,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        { "name": "ig_intr_md.ingress_port", "start_bit": 0, "bit_width": 8 },
+        { "name": "ig_intr_md.ingress_port", "start_bit": 8, "bit_width": 1 },
+        {
+          "name": "fabric_metadata.is_multicast",
+          "start_bit": 17,
+          "bit_width": 1
+        }
+      ],
+      "condition": "(fabric_metadata.is_multicast == 1 && ig_intr_md.ingress_port == eg_intr_md.egress_port)",
       "size": 0
     },
     {
       "direction": "ingress",
       "attached_to": "-",
-      "handle": 1879048224,
-      "name": "cond-14",
+      "handle": 1879048215,
+      "name": "cond-8",
       "table_type": "condition",
       "stage_tables": [
         {
           "next_tables": { "false": 144, "true": 113 },
-          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
             "false": "FabricIngress.acl.acl",
@@ -153689,7 +141233,7 @@
       "condition_fields": [
         {
           "name": "fabric_metadata.skip_forwarding",
-          "start_bit": 0,
+          "start_bit": 1,
           "bit_width": 1
         }
       ],
@@ -153698,7 +141242,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777243,
+      "handle": 16777231,
       "name": "FabricIngress.forwarding.bridging",
       "table_type": "match",
       "size": 2048,
@@ -154658,7 +142202,7 @@
               "action_format": [
                 {
                   "action_name": "nop",
-                  "action_handle": 536870944,
+                  "action_handle": 536870940,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 4294967295,
                   "next_table_full": 144,
@@ -154675,7 +142219,7 @@
                 },
                 {
                   "action_name": "FabricIngress.forwarding.set_next_id_bridging",
-                  "action_handle": 536870943,
+                  "action_handle": 536870939,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 144,
@@ -154699,7 +142243,7 @@
       "action_data_table_refs": [
         {
           "how_referenced": "direct",
-          "handle": 33554438,
+          "handle": 33554440,
           "name": "FabricIngress.forwarding.bridging$action"
         }
       ],
@@ -154716,7 +142260,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870944,
+          "handle": 536870940,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -154737,7 +142281,7 @@
         },
         {
           "name": "FabricIngress.forwarding.set_next_id_bridging",
-          "handle": 536870943,
+          "handle": 536870939,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -154779,7 +142323,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870944,
+      "default_action_handle": 536870940,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -154817,13 +142361,13 @@
     {
       "direction": "ingress",
       "attached_to": "FabricIngress.forwarding.bridging",
-      "handle": 1879048225,
-      "name": "cond-15",
+      "handle": 1879048216,
+      "name": "cond-9",
       "table_type": "condition",
       "stage_tables": [
         {
           "next_tables": { "false": 114, "true": 113 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
+          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
             "false": "FabricIngress.forwarding.mpls",
@@ -154835,8 +142379,8 @@
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "fabric_metadata.fwd_type", "start_bit": 0, "bit_width": 3 } ],
-      "condition": "(fabric_metadata.fwd_type == 0)",
+      "condition_fields": [ { "name": "fabric_metadata.fwd_type", "start_bit": 1, "bit_width": 3 } ],
+      "condition": "(compiler_generated_meta.^bridged_metadata.^fields_md_fwd_type == 0)",
       "size": 0
     },
     {
@@ -154862,12 +142406,12 @@
           "memory_resource_allocation": {
             "memory_type": "sram",
             "memory_units_and_vpns": [
-              { "memory_units": [ 54 ], "vpns": [ 0 ] },
-              { "memory_units": [ 55 ], "vpns": [ 1 ] }
+              { "memory_units": [ 30 ], "vpns": [ 0 ] },
+              { "memory_units": [ 31 ], "vpns": [ 1 ] }
             ],
-            "spare_bank_memory_unit": 56
+            "spare_bank_memory_unit": 32
           },
-          "stats_alu_index": 2
+          "stats_alu_index": 1
         }
       ],
       "how_referenced": "direct",
@@ -154879,7 +142423,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 33554438,
+      "handle": 33554440,
       "name": "FabricIngress.forwarding.bridging$action",
       "table_type": "action",
       "size": 4096,
@@ -154901,7 +142445,17 @@
                   "fields": [
                     {
                       "start_bit": 0,
-                      "field_width": 32,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "next_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -154916,7 +142470,17 @@
                   "fields": [
                     {
                       "start_bit": 0,
-                      "field_width": 32,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "next_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -154931,7 +142495,17 @@
                   "fields": [
                     {
                       "start_bit": 0,
-                      "field_width": 32,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "next_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -154946,7 +142520,17 @@
                   "fields": [
                     {
                       "start_bit": 0,
-                      "field_width": 32,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "next_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -154957,7 +142541,7 @@
                   ]
                 }
               ],
-              "action_handle": 536870943
+              "action_handle": 536870939
             },
             {
               "memory_word_width": 128,
@@ -155026,7 +142610,7 @@
                   ]
                 }
               ],
-              "action_handle": 536870944
+              "action_handle": 536870940
             }
           ],
           "memory_resource_allocation": {
@@ -155038,7 +142622,7 @@
       "actions": [
         {
           "name": "FabricIngress.forwarding.set_next_id_bridging",
-          "handle": 536870943,
+          "handle": 536870939,
           "p4_parameters": [
             {
               "name": "next_id",
@@ -155048,14 +142632,14 @@
             }
           ]
         },
-        { "name": "nop", "handle": 536870944, "p4_parameters": [] }
+        { "name": "nop", "handle": 536870940, "p4_parameters": [] }
       ],
       "static_entries": [],
       "how_referenced": "direct"
     },
     {
       "direction": "ingress",
-      "handle": 16777244,
+      "handle": 16777232,
       "name": "FabricIngress.forwarding.mpls",
       "table_type": "match",
       "size": 2048,
@@ -155070,7 +142654,7 @@
         }
       ],
       "stateful_table_refs": [],
-      "default_action_handle": 536870946,
+      "default_action_handle": 536870942,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -155106,52 +142690,10 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 4,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 16
                       },
                       {
                         "field_bit": 10,
@@ -155172,64 +142714,46 @@
                         "hash_match_group_bit": 24
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
                         "field_bit": 16,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 28
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 17,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 29
                       },
                       {
                         "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
-                    "hash_bit": 2,
+                    "hash_bit": 0,
                     "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 3,
+                        "field_bit": 5,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 12,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 24
                       },
                       {
                         "field_bit": 13,
@@ -155238,12 +142762,114 @@
                         "hash_match_group_bit": 25
                       },
                       {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
                         "field_bit": 15,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 27
                       },
                       {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
                         "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -155256,10 +142882,52 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 4,
+                        "field_bit": 8,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
                       },
                       {
                         "field_bit": 11,
@@ -155274,40 +142942,16 @@
                         "hash_match_group_bit": 24
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 25
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 14,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 26
                       },
                       {
                         "field_bit": 17,
@@ -155316,6 +142960,12 @@
                         "hash_match_group_bit": 29
                       },
                       {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
                         "field_bit": 19,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -155328,18 +142978,6 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -155352,12 +142990,6 @@
                         "hash_match_group_bit": 24
                       },
                       {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -155374,6 +143006,18 @@
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 36
                       }
                     ],
                     "hash_bit": 6,
@@ -155382,12 +143026,6 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 7,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -155400,10 +143038,34 @@
                         "hash_match_group_bit": 24
                       },
                       {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
                         "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 37
                       }
                     ],
                     "hash_bit": 7,
@@ -155412,12 +143074,6 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 8,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -155440,243 +143096,75 @@
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 8,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 11,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
                       },
                       {
                         "field_bit": 19,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 12,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
+                      },
                       {
                         "field_bit": 2,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 38
+                      }
+                    ],
+                    "hash_bit": 8,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
                       },
                       {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 39
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
                         "field_bit": 10,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
                         "field_bit": 17,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 29
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
                         "field_bit": 3,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 39
                       }
                     ],
-                    "hash_bit": 14,
+                    "hash_bit": 10,
                     "seed": 0
                   },
                   {
@@ -155694,26 +143182,26 @@
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
-                    "hash_bit": 15,
-                    "seed": 0
+                    "hash_bit": 11,
+                    "seed": 1
                   },
                   {
                     "bits_to_xor": [
@@ -155724,10 +143212,10 @@
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 11,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 23
                       },
                       {
                         "field_bit": 12,
@@ -155742,14 +143230,26 @@
                         "hash_match_group_bit": 27
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 16,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
-                    "hash_bit": 16,
-                    "seed": 0
+                    "hash_bit": 12,
+                    "seed": 1
                   },
                   {
                     "bits_to_xor": [
@@ -155772,26 +143272,38 @@
                         "hash_match_group_bit": 23
                       },
                       {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
                         "field_bit": 13,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 25
                       },
                       {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
                         "field_bit": 16,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
                       }
                     ],
-                    "hash_bit": 17,
-                    "seed": 1
+                    "hash_bit": 13,
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
@@ -155802,94 +143314,16 @@
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 12,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 24
                       },
                       {
                         "field_bit": 14,
@@ -155922,8 +143356,44 @@
                         "hash_match_group_bit": 31
                       }
                     ],
-                    "hash_bit": 20,
-                    "seed": 1
+                    "hash_bit": 14,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
@@ -155934,40 +143404,16 @@
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 13,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 25
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 14,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      }
-                    ],
-                    "hash_bit": 21,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 26
                       },
                       {
                         "field_bit": 15,
@@ -155988,16 +143434,310 @@
                         "hash_match_group_bit": 30
                       }
                     ],
-                    "hash_bit": 22,
+                    "hash_bit": 16,
                     "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 36
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
                         "field_bit": 1,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 37
+                      }
+                    ],
+                    "hash_bit": 18,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 38
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 38
+                      }
+                    ],
+                    "hash_bit": 20,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 39
+                      }
+                    ],
+                    "hash_bit": 21,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 22,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
                       },
                       {
                         "field_bit": 14,
@@ -156012,6 +143752,12 @@
                         "hash_match_group_bit": 28
                       },
                       {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
                         "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -156025,15 +143771,39 @@
                       }
                     ],
                     "hash_bit": 23,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 24,
                     "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 7,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 19
                       },
                       {
                         "field_bit": 10,
@@ -156042,36 +143812,180 @@
                         "hash_match_group_bit": 22
                       },
                       {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 25,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
                         "field_bit": 17,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
-                    "hash_bit": 24,
+                    "hash_bit": 26,
                     "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 3,
+                        "field_bit": 9,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 21
                       },
                       {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
                         "field_bit": 10,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 36
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
                         "field_bit": 13,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 25
                       },
                       {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
                         "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -156082,9 +143996,117 @@
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 37
                       }
                     ],
-                    "hash_bit": 25,
+                    "hash_bit": 29,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 37
+                      }
+                    ],
+                    "hash_bit": 30,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 38
+                      }
+                    ],
+                    "hash_bit": 31,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 39
+                      }
+                    ],
+                    "hash_bit": 32,
                     "seed": 1
                   },
                   {
@@ -156102,12 +144124,6 @@
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
                         "field_bit": 12,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -156132,8 +144148,8 @@
                         "hash_match_group_bit": 29
                       }
                     ],
-                    "hash_bit": 26,
-                    "seed": 1
+                    "hash_bit": 33,
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
@@ -156144,50 +144160,38 @@
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
                         "field_bit": 13,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 25
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 27
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 30
                       }
                     ],
-                    "hash_bit": 27,
-                    "seed": 1
+                    "hash_bit": 34,
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
@@ -156198,112 +144202,16 @@
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 11,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 30,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 23
                       },
                       {
                         "field_bit": 12,
@@ -156318,120 +144226,6 @@
                         "hash_match_group_bit": 25
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 31,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
                         "field_bit": 14,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -156450,72 +144244,6 @@
                         "hash_match_group_bit": 28
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 34,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
                         "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -156528,10 +144256,16 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 3,
+                        "field_bit": 7,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
                       },
                       {
                         "field_bit": 14,
@@ -156540,64 +144274,10 @@
                         "hash_match_group_bit": 26
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 15,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 36,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 37,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 27
                       },
                       {
                         "field_bit": 16,
@@ -156612,16 +144292,16 @@
                         "hash_match_group_bit": 31
                       }
                     ],
-                    "hash_bit": 38,
-                    "seed": 0
+                    "hash_bit": 36,
+                    "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
+                        "field_bit": 8,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 20
                       },
                       {
                         "field_bit": 10,
@@ -156636,34 +144316,148 @@
                         "hash_match_group_bit": 24
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 14,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
                       },
                       {
                         "field_bit": 16,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 37,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 36
                       }
                     ],
                     "hash_bit": 39,
-                    "seed": 1
+                    "seed": 0
                   }
                 ],
                 "hash_function_number": 0,
                 "ghost_bit_to_hash_bit": [
+                  [ 6, 17, 28, 39 ],
+                  [ 7, 18, 29, 30 ],
+                  [ 8, 19, 20, 31 ],
+                  [ 9, 10, 21, 32 ],
                   [ 0, 11, 22, 33 ],
                   [ 1, 12, 23, 34 ],
                   [ 2, 13, 24, 35 ],
                   [ 3, 14, 25, 36 ],
                   [ 4, 15, 26, 37 ],
-                  [ 5, 16, 27, 38 ],
-                  [ 6, 17, 28, 39 ],
-                  [ 7, 18, 29, 30 ],
-                  [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ]
+                  [ 5, 16, 27, 38 ]
                 ],
                 "ghost_bit_info": [
                   { "field_name": "mpls_label", "bit_in_match_spec": 0 },
@@ -156682,7 +144476,7 @@
             "action_format": [
               {
                 "action_name": "nop",
-                "action_handle": 536870946,
+                "action_handle": 536870942,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 4294967295,
                 "next_table_full": 144,
@@ -156699,7 +144493,7 @@
               },
               {
                 "action_name": "FabricIngress.forwarding.pop_mpls_and_next",
-                "action_handle": 536870945,
+                "action_handle": 536870941,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 144,
@@ -156717,13 +144511,20 @@
                     "param_name": "next_id",
                     "param_type": "parameter",
                     "param_shift": 0,
+                    "dest_start": 24,
+                    "dest_width": 8
+                  },
+                  {
+                    "param_name": "next_id",
+                    "param_type": "parameter",
+                    "param_shift": 8,
                     "dest_start": 0,
-                    "dest_width": 32
+                    "dest_width": 24
                   }
                 ]
               }
             ],
-            "result_physical_buses": [ 14, 12 ],
+            "result_physical_buses": [ 13, 10 ],
             "pack_format": [
               {
                 "memory_word_width": 128,
@@ -156799,17 +144600,17 @@
               "stash_entries": [
                 [
                   {
-                    "stash_entry_id": 28,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
+                    "stash_entry_id": 24,
+                    "stash_match_data_select": 1,
+                    "stash_hashbank_select": 1,
                     "hash_function_id": 0
                   }
                 ],
                 [
                   {
-                    "stash_entry_id": 29,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
+                    "stash_entry_id": 25,
+                    "stash_match_data_select": 1,
+                    "stash_hashbank_select": 1,
                     "hash_function_id": 0
                   }
                 ]
@@ -156934,7 +144735,7 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 75 ], "vpns": [ 0 ] } ]
                 }
               },
               {
@@ -157055,7 +144856,7 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 76 ], "vpns": [ 1 ] } ]
                 }
               },
               {
@@ -157176,7 +144977,7 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 62 ], "vpns": [ 2 ] } ]
                 }
               },
               {
@@ -157297,7 +145098,7 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 74 ], "vpns": [ 3 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 63 ], "vpns": [ 3 ] } ]
                 }
               }
             ]
@@ -157309,7 +145110,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870946,
+          "handle": 536870942,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -157329,7 +145130,7 @@
         },
         {
           "name": "FabricIngress.forwarding.pop_mpls_and_next",
-          "handle": 536870945,
+          "handle": 536870941,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -157383,13 +145184,13 @@
     {
       "direction": "ingress",
       "attached_to": "FabricIngress.forwarding.mpls",
-      "handle": 1879048226,
-      "name": "cond-16",
+      "handle": 1879048217,
+      "name": "cond-10",
       "table_type": "condition",
       "stage_tables": [
         {
           "next_tables": { "false": 115, "true": 114 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
+          "memory_resource_allocation": { "memory_unit": 13, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
             "false": "FabricIngress.forwarding.routing_v4",
@@ -157401,8 +145202,8 @@
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "fabric_metadata.fwd_type", "start_bit": 0, "bit_width": 3 } ],
-      "condition": "(fabric_metadata.fwd_type == 1)",
+      "condition_fields": [ { "name": "fabric_metadata.fwd_type", "start_bit": 1, "bit_width": 3 } ],
+      "condition": "(compiler_generated_meta.^bridged_metadata.^fields_md_fwd_type == 1)",
       "size": 0
     },
     {
@@ -157428,14 +145229,14 @@
           "memory_resource_allocation": {
             "memory_type": "sram",
             "memory_units_and_vpns": [
-              { "memory_units": [ 78 ], "vpns": [ 0 ] },
-              { "memory_units": [ 79 ], "vpns": [ 1 ] },
-              { "memory_units": [ 80 ], "vpns": [ 2 ] },
-              { "memory_units": [ 81 ], "vpns": [ 3 ] }
+              { "memory_units": [ 54 ], "vpns": [ 0 ] },
+              { "memory_units": [ 55 ], "vpns": [ 1 ] },
+              { "memory_units": [ 56 ], "vpns": [ 2 ] },
+              { "memory_units": [ 57 ], "vpns": [ 3 ] }
             ],
-            "spare_bank_memory_unit": 82
+            "spare_bank_memory_unit": 58
           },
-          "stats_alu_index": 3
+          "stats_alu_index": 2
         }
       ],
       "how_referenced": "direct",
@@ -157447,7 +145248,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777245,
+      "handle": 16777233,
       "name": "FabricIngress.forwarding.routing_v4",
       "table_type": "match",
       "size": 30000,
@@ -157455,7 +145256,7 @@
         "match_type": "algorithmic_lpm",
         "pre_classifier": {
           "direction": "ingress",
-          "handle": 16777275,
+          "handle": 16777262,
           "name": "FabricIngress.forwarding.routing_v4_pre_classifier",
           "table_type": "match",
           "size": 30000,
@@ -158370,12 +146171,12 @@
                   "action_format": [
                     {
                       "action_name": "forwarding_routing_v4__alpm_preclassifier__set_partition_index",
-                      "action_handle": 536870947,
+                      "action_handle": 536870943,
                       "table_name": "--END_OF_PIPELINE--",
                       "next_table": 0,
                       "next_table_full": 128,
                       "vliw_instruction": 1,
-                      "vliw_instruction_full": 67,
+                      "vliw_instruction_full": 68,
                       "next_tables": [
                         {
                           "next_table_name": "FabricIngress.forwarding.routing_v4",
@@ -158394,7 +146195,7 @@
           "action_data_table_refs": [
             {
               "how_referenced": "direct",
-              "handle": 33554439,
+              "handle": 33554441,
               "name": "FabricIngress.forwarding.routing_v4_preclassifier$action"
             }
           ],
@@ -158405,7 +146206,7 @@
           "actions": [
             {
               "name": "forwarding_routing_v4__alpm_preclassifier__set_partition_index",
-              "handle": 536870947,
+              "handle": 536870943,
               "primitives": [
                 {
                   "name": "ModifyFieldPrimitive",
@@ -158443,7 +146244,7 @@
               "is_action_meter_color_aware": false
             }
           ],
-          "default_action_handle": 536870947,
+          "default_action_handle": 536870943,
           "action_profile": "",
           "default_next_table_mask": 0,
           "default_next_table_default": 0,
@@ -158470,15 +146271,15 @@
         "partition_field_name": "partition_index",
         "lpm_field_name": "ipv4_dst",
         "bins_per_partition": 30,
-        "set_partition_action_handle": 536870947,
+        "set_partition_action_handle": 536870943,
         "stage_tables": [],
         "atcam_table": {
           "direction": "ingress",
-          "handle": 16777276,
+          "handle": 16777263,
           "name": "FabricIngress.forwarding.routing_v4",
           "table_type": "match",
           "size": 30000,
-          "default_action_handle": 536870950,
+          "default_action_handle": 536870946,
           "action_profile": "",
           "default_next_table_mask": 0,
           "default_next_table_default": 0,
@@ -158504,11 +146305,11 @@
             "units": [
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt0",
                 "size": 5120,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -158541,7 +146342,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -158558,7 +146359,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -158576,14 +146377,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -158774,7 +146582,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -158794,7 +146602,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -158821,7 +146629,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -158849,11 +146657,11 @@
               },
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt1",
                 "size": 5120,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -158886,7 +146694,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -158903,7 +146711,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -158921,14 +146729,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -159119,7 +146934,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159139,7 +146954,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159166,7 +146981,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159194,11 +147009,11 @@
               },
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt2",
                 "size": 5120,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -159231,7 +147046,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -159248,7 +147063,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -159266,14 +147081,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -159464,7 +147286,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159484,7 +147306,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159511,7 +147333,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159539,11 +147361,11 @@
               },
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt3",
                 "size": 4096,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -159576,7 +147398,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -159593,7 +147415,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -159611,14 +147433,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -159805,7 +147634,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159825,7 +147654,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159852,7 +147681,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159880,11 +147709,11 @@
               },
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt4",
                 "size": 4096,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -159917,7 +147746,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -159934,7 +147763,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -159952,14 +147781,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -160146,7 +147982,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160166,7 +148002,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160193,7 +148029,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160221,11 +148057,11 @@
               },
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt5",
                 "size": 4096,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -160258,7 +148094,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -160275,7 +148111,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -160293,14 +148129,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -160487,7 +148330,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160507,7 +148350,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160534,7 +148377,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160562,11 +148405,11 @@
               },
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt6",
                 "size": 4096,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -160599,7 +148442,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -160616,7 +148459,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -160634,14 +148477,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -160828,7 +148678,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160848,7 +148698,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160875,7 +148725,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160909,7 +148759,7 @@
           "actions": [
             {
               "name": "nop",
-              "handle": 536870950,
+              "handle": 536870946,
               "primitives": [],
               "indirect_resources": [],
               "allowed_as_default_action": true,
@@ -160929,7 +148779,7 @@
             },
             {
               "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-              "handle": 536870948,
+              "handle": 536870944,
               "primitives": [],
               "indirect_resources": [],
               "allowed_as_default_action": true,
@@ -160956,7 +148806,7 @@
             },
             {
               "name": "FabricIngress.forwarding.nop_routing_v4",
-              "handle": 536870949,
+              "handle": 536870945,
               "primitives": [],
               "indirect_resources": [],
               "allowed_as_default_action": true,
@@ -160982,7 +148832,7 @@
           "stateful_table_refs": []
         }
       },
-      "default_action_handle": 536870950,
+      "default_action_handle": 536870946,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -161006,7 +148856,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870950,
+          "handle": 536870946,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -161026,7 +148876,7 @@
         },
         {
           "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-          "handle": 536870948,
+          "handle": 536870944,
           "primitives": [
             {
               "name": "ModifyFieldPrimitive",
@@ -161103,7 +148953,7 @@
         },
         {
           "name": "FabricIngress.forwarding.nop_routing_v4",
-          "handle": 536870949,
+          "handle": 536870945,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -161131,13 +148981,13 @@
     {
       "direction": "ingress",
       "attached_to": "FabricIngress.forwarding.routing_v4",
-      "handle": 1879048227,
-      "name": "cond-17",
+      "handle": 1879048218,
+      "name": "cond-11",
       "table_type": "condition",
       "stage_tables": [
         {
           "next_tables": { "false": 144, "true": 115 },
-          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "memory_resource_allocation": { "memory_unit": 12, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
             "false": "FabricIngress.acl.acl",
@@ -161149,80 +148999,45 @@
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "fabric_metadata.fwd_type", "start_bit": 0, "bit_width": 3 } ],
-      "condition": "(fabric_metadata.fwd_type == 2)",
+      "condition_fields": [ { "name": "fabric_metadata.fwd_type", "start_bit": 1, "bit_width": 3 } ],
+      "condition": "(compiler_generated_meta.^bridged_metadata.^fields_md_fwd_type == 2)",
       "size": 0
     },
     {
       "direction": "ingress",
-      "handle": 33554439,
+      "handle": 33554441,
       "name": "FabricIngress.forwarding.routing_v4_preclassifier$action",
       "table_type": "action",
-      "size": 8192,
+      "size": 4096,
       "stage_tables": [
         {
           "stage_number": 7,
-          "size": 8192,
+          "size": 4096,
           "stage_table_type": "action_data",
           "logical_table_id": 3,
           "pack_format": [
             {
               "memory_word_width": 128,
               "table_word_width": 128,
-              "entries_per_table_word": 8,
+              "entries_per_table_word": 4,
               "number_memory_units_per_table_word": 1,
               "entries": [
                 {
-                  "entry_number": 7,
+                  "entry_number": 3,
                   "fields": [
                     {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "partition_index"
-                    },
-                    {
                       "start_bit": 0,
                       "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 120,
-                      "field_name": "partition_index"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 6,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "--padding_2_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 6,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
                       "lsb_mem_word_offset": 96,
                       "field_name": "partition_index"
                     },
                     {
-                      "start_bit": 0,
-                      "field_width": 8,
+                      "start_bit": 8,
+                      "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -161232,67 +149047,32 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 6,
+                      "field_width": 22,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 98,
-                      "field_name": "--padding_2_7--"
+                      "lsb_mem_word_offset": 106,
+                      "field_name": "--padding_10_31--"
                     }
                   ]
                 },
                 {
-                  "entry_number": 5,
+                  "entry_number": 2,
                   "fields": [
                     {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "partition_index"
-                    },
-                    {
                       "start_bit": 0,
                       "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 88,
-                      "field_name": "partition_index"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 6,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "--padding_2_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 4,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
                       "lsb_mem_word_offset": 64,
                       "field_name": "partition_index"
                     },
                     {
-                      "start_bit": 0,
-                      "field_width": 8,
+                      "start_bit": 8,
+                      "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -161302,67 +149082,32 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 6,
+                      "field_width": 22,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 66,
-                      "field_name": "--padding_2_7--"
+                      "lsb_mem_word_offset": 74,
+                      "field_name": "--padding_10_31--"
                     }
                   ]
                 },
                 {
-                  "entry_number": 3,
+                  "entry_number": 1,
                   "fields": [
                     {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "partition_index"
-                    },
-                    {
                       "start_bit": 0,
                       "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 56,
-                      "field_name": "partition_index"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 6,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "--padding_2_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 2,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
                       "lsb_mem_word_offset": 32,
                       "field_name": "partition_index"
                     },
                     {
-                      "start_bit": 0,
-                      "field_width": 8,
+                      "start_bit": 8,
+                      "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -161372,48 +149117,13 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 6,
+                      "field_width": 22,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 34,
-                      "field_name": "--padding_2_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "partition_index"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 24,
-                      "field_name": "partition_index"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 6,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "--padding_2_7--"
+                      "lsb_mem_word_offset": 42,
+                      "field_name": "--padding_10_31--"
                     }
                   ]
                 },
@@ -161421,8 +149131,8 @@
                   "entry_number": 0,
                   "fields": [
                     {
-                      "start_bit": 8,
-                      "field_width": 2,
+                      "start_bit": 0,
+                      "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -161431,8 +149141,8 @@
                       "field_name": "partition_index"
                     },
                     {
-                      "start_bit": 0,
-                      "field_width": 8,
+                      "start_bit": 8,
+                      "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -161442,18 +149152,18 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 6,
+                      "field_width": 22,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 2,
-                      "field_name": "--padding_2_7--"
+                      "lsb_mem_word_offset": 10,
+                      "field_name": "--padding_10_31--"
                     }
                   ]
                 }
               ],
-              "action_handle": 536870947
+              "action_handle": 536870943
             }
           ],
           "memory_resource_allocation": {
@@ -161465,7 +149175,7 @@
       "actions": [
         {
           "name": "forwarding_routing_v4__alpm_preclassifier__set_partition_index",
-          "handle": 536870947,
+          "handle": 536870943,
           "p4_parameters": [
             {
               "name": "partition_index",
@@ -161481,8 +149191,2749 @@
     },
     {
       "direction": "egress",
-      "handle": 16777273,
-      "name": "tbl_act_24",
+      "handle": 16777257,
+      "name": "FabricEgress.egress_next.egress_vlan",
+      "table_type": "match",
+      "size": 2048,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108878,
+          "name": "FabricEgress.egress_next.egress_vlan_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870974,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "vlan_id",
+          "global_name": "fabric_metadata.vlan_id",
+          "start_bit": 0,
+          "bit_width": 12,
+          "bit_width_full": 12,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "vlan_id"
+        },
+        {
+          "name": "eg_port",
+          "global_name": "eg_intr_md.egress_port",
+          "start_bit": 0,
+          "bit_width": 9,
+          "bit_width_full": 9,
+          "position": 1,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "eg_intr_md",
+          "field_name": "egress_port"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 7,
+            "size": 4096,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 4,
+            "has_attached_gateway": false,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      }
+                    ],
+                    "hash_bit": 5,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      }
+                    ],
+                    "hash_bit": 6,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 89
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 90
+                      }
+                    ],
+                    "hash_bit": 8,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 91
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 91
+                      }
+                    ],
+                    "hash_bit": 10,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 11,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      }
+                    ],
+                    "hash_bit": 12,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 13,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      }
+                    ],
+                    "hash_bit": 14,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 16,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 89
+                      }
+                    ],
+                    "hash_bit": 18,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 90
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 90
+                      }
+                    ],
+                    "hash_bit": 20,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 91
+                      }
+                    ],
+                    "hash_bit": 21,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      }
+                    ],
+                    "hash_bit": 22,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 23,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 25,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 26,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 89
+                      }
+                    ],
+                    "hash_bit": 29,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 89
+                      }
+                    ],
+                    "hash_bit": 30,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 90
+                      }
+                    ],
+                    "hash_bit": 31,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 91
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 34,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      }
+                    ],
+                    "hash_bit": 35,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 36,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      }
+                    ],
+                    "hash_bit": 37,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      }
+                    ],
+                    "hash_bit": 39,
+                    "seed": 1
+                  }
+                ],
+                "hash_function_number": 1,
+                "ghost_bit_to_hash_bit": [
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ],
+                  [ 2, 13, 24, 35 ],
+                  [ 3, 14, 25, 36 ],
+                  [ 4, 15, 26, 37 ],
+                  [ 5, 16, 27, 38 ],
+                  [ 6, 17, 28, 39 ],
+                  [ 7, 18, 29, 30 ],
+                  [ 8, 19, 20, 31 ],
+                  [ 9, 10, 21, 32 ]
+                ],
+                "ghost_bit_info": [
+                  { "field_name": "eg_port", "bit_in_match_spec": 0 },
+                  { "field_name": "eg_port", "bit_in_match_spec": 1 },
+                  { "field_name": "eg_port", "bit_in_match_spec": 2 },
+                  { "field_name": "eg_port", "bit_in_match_spec": 3 },
+                  { "field_name": "eg_port", "bit_in_match_spec": 4 },
+                  { "field_name": "eg_port", "bit_in_match_spec": 8 },
+                  { "field_name": "vlan_id", "bit_in_match_spec": 8 },
+                  { "field_name": "vlan_id", "bit_in_match_spec": 9 },
+                  { "field_name": "vlan_id", "bit_in_match_spec": 10 },
+                  { "field_name": "vlan_id", "bit_in_match_spec": 11 }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "FabricEgress.egress_next.drop",
+                "action_handle": 536870974,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 4294967295,
+                "next_table_full": 117,
+                "vliw_instruction": -1,
+                "vliw_instruction_full": 68,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_10",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 7
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.egress_next.push_vlan",
+                "action_handle": 536870972,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 117,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_10",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 7
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.egress_next.pop_vlan",
+                "action_handle": 536870973,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 117,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_10",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 7
+                  }
+                ],
+                "immediate_fields": []
+              }
+            ],
+            "result_physical_buses": [ 14, 12 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "field_name": "eg_port",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 45,
+                          "start_bit": 5,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 3
+                        },
+                        {
+                          "field_name": "vlan_id",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 32,
+                          "start_bit": 0,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action",
+                          "match_mode": "unused"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 28,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 29,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 7,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "eg_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 45,
+                            "start_bit": 5,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 3
+                          },
+                          {
+                            "field_name": "vlan_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 5,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_44--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 7,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "eg_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 45,
+                            "start_bit": 5,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 3
+                          },
+                          {
+                            "field_name": "vlan_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 5,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_44--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 7,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "eg_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 45,
+                            "start_bit": 5,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 3
+                          },
+                          {
+                            "field_name": "vlan_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 5,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_44--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              },
+              {
+                "stage_number": 7,
+                "way_number": 3,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "eg_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 45,
+                            "start_bit": 5,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 3
+                          },
+                          {
+                            "field_name": "vlan_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 5,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_44--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 30,
+                  "hash_entry_bit_hi": 39,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 74 ], "vpns": [ 3 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "FabricEgress.egress_next.drop",
+          "handle": 536870974,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.egress_next.push_vlan",
+          "handle": 536870972,
+          "primitives": [
+            {
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricEgress.egress_next.egress_vlan_counter"
+              }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.vlan_tag.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.vlan_tag.cfi" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "fabric_metadata.vlan_cfi" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.vlan_tag.pri" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "fabric_metadata.vlan_pri" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.vlan_tag.eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x8100" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.vlan_tag.vlan_id" },
+              "dst_mask": { "type": "immediate", "name": "4095" },
+              "src1": { "type": "phv", "name": "fabric_metadata.vlan_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.packet_in._pad" },
+              "dst_mask": { "type": "immediate", "name": "127" },
+              "src1": { "type": "immediate", "name": "0" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.egress_next.pop_vlan",
+          "handle": 536870973,
+          "primitives": [
+            {
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricEgress.egress_next.egress_vlan_counter"
+              }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.vlan_tag.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.packet_in._pad" },
+              "dst_mask": { "type": "immediate", "name": "127" },
+              "src1": { "type": "immediate", "name": "0" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "handle": 67108878,
+      "name": "FabricEgress.egress_next.egress_vlan_counter",
+      "table_type": "statistics",
+      "size": 4096,
+      "stage_tables": [
+        {
+          "stage_number": 7,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 4,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] },
+              { "memory_units": [ 80 ], "vpns": [ 2 ] },
+              { "memory_units": [ 81 ], "vpns": [ 3 ] }
+            ],
+            "spare_bank_memory_unit": 82
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 64,
+      "packet_counter_resolution": 64,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "egress",
+      "handle": 16777258,
+      "name": "tbl_act_10",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -161491,9 +151942,9 @@
             "stage_number": 7,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 4,
+            "logical_table_id": 5,
             "has_attached_gateway": true,
-            "default_next_table": 255,
+            "default_next_table": 135,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -162346,14 +152797,20 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_23",
-                  "action_handle": 536870982,
+                  "action_name": "act_11",
+                  "action_handle": 536870975,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 255,
+                  "next_table_full": 135,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [],
+                  "vliw_instruction_full": 67,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_11",
+                      "next_table_logical_id": 7,
+                      "next_table_stage_no": 8
+                    }
+                  ],
                   "immediate_fields": []
                 }
               ]
@@ -162369,13 +152826,16 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_23",
-          "handle": 536870982,
+          "name": "act_11",
+          "handle": 536870975,
           "primitives": [
             {
-              "name": "DropPrimitive",
-              "dst": { "type": "phv", "name": "eg_intr_md_for_dprsr.drop_ctl" },
-              "src1": { "type": "immediate", "name": "1" }
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.mpls.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.mpls.ttl" },
+              "src2": { "type": "immediate", "name": "255" }
             }
           ],
           "indirect_resources": [],
@@ -162396,7 +152856,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870982,
+      "default_action_handle": 536870975,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -162408,30 +152868,30 @@
     },
     {
       "direction": "egress",
-      "attached_to": "tbl_act_24",
-      "handle": 1879048228,
-      "name": "cond-28",
+      "attached_to": "tbl_act_10",
+      "handle": 1879048219,
+      "name": "cond-18",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 255, "true": 116 },
-          "memory_resource_allocation": { "memory_unit": 12, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 118, "true": 117 },
+          "memory_resource_allocation": { "memory_unit": 10, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "END", "true": "tbl_act_24" },
-          "logical_table_id": 4,
+          "next_table_names": { "false": "tbl_act_12", "true": "tbl_act_10" },
+          "logical_table_id": 5,
           "stage_number": 7,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.ipv4.ttl", "start_bit": 0, "bit_width": 8 } ],
-      "condition": "(hdr.ipv4.ttl == 0)",
+      "condition_fields": [ { "name": "hdr.mpls.$valid", "start_bit": 7, "bit_width": 1 } ],
+      "condition": "(hdr.mpls.$valid == 1)",
       "size": 0
     },
     {
       "direction": "egress",
-      "handle": 16777274,
-      "name": "tbl_act_22",
+      "handle": 16777259,
+      "name": "tbl_act_12",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -162440,9 +152900,9 @@
             "stage_number": 7,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 5,
+            "logical_table_id": 6,
             "has_attached_gateway": true,
-            "default_next_table": 255,
+            "default_next_table": 136,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -163295,13 +153755,974 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_21",
-                  "action_handle": 536870980,
+                  "action_name": "act_13",
+                  "action_handle": 536870977,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 136,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 69,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_13",
+                      "next_table_logical_id": 8,
+                      "next_table_stage_no": 8
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "act_13",
+          "handle": 536870977,
+          "primitives": [
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "src2": { "type": "immediate", "name": "255" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536870977,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_12",
+      "handle": 1879048220,
+      "name": "cond-20",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 255, "true": 118 },
+          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "END", "true": "tbl_act_12" },
+          "logical_table_id": 6,
+          "stage_number": 7,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        { "name": "fabric_metadata.fwd_type", "start_bit": 1, "bit_width": 3 },
+        { "name": "hdr.ipv4.$valid", "start_bit": 8, "bit_width": 1 }
+      ],
+      "condition": "(hdr.ipv4.$valid == 1 && fabric_metadata.fwd_type != 0)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 16777261,
+      "name": "tbl_act_11",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 8,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 7,
+            "has_attached_gateway": true,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 0 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 8,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "act_10",
+                  "action_handle": 536870976,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 255,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
+                  "vliw_instruction_full": 65,
                   "next_tables": [],
                   "immediate_fields": []
                 }
@@ -163318,8 +154739,8 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_21",
-          "handle": 536870980,
+          "name": "act_10",
+          "handle": 536870976,
           "primitives": [
             {
               "name": "DropPrimitive",
@@ -163345,7 +154766,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870980,
+      "default_action_handle": 536870976,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -163357,18 +154778,18 @@
     },
     {
       "direction": "egress",
-      "attached_to": "tbl_act_22",
-      "handle": 1879048229,
-      "name": "cond-26",
+      "attached_to": "tbl_act_11",
+      "handle": 1879048221,
+      "name": "cond-19",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 255, "true": 117 },
-          "memory_resource_allocation": { "memory_unit": 3, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 255, "true": 135 },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "END", "true": "tbl_act_22" },
-          "logical_table_id": 5,
-          "stage_number": 7,
+          "next_table_names": { "false": "END", "true": "tbl_act_11" },
+          "logical_table_id": 7,
+          "stage_number": 8,
           "stage_table_type": "gateway",
           "size": 0
         }
@@ -163378,8 +154799,957 @@
       "size": 0
     },
     {
+      "direction": "egress",
+      "handle": 16777260,
+      "name": "tbl_act_13",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 8,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 8,
+            "has_attached_gateway": true,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 1 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 8,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "act_12",
+                  "action_handle": 536870978,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 255,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 66,
+                  "next_tables": [],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "act_12",
+          "handle": 536870978,
+          "primitives": [
+            {
+              "name": "DropPrimitive",
+              "dst": { "type": "phv", "name": "eg_intr_md_for_dprsr.drop_ctl" },
+              "src1": { "type": "immediate", "name": "1" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536870978,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_13",
+      "handle": 1879048222,
+      "name": "cond-21",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 255, "true": 136 },
+          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "END", "true": "tbl_act_13" },
+          "logical_table_id": 8,
+          "stage_number": 8,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [ { "name": "hdr.ipv4.ttl", "start_bit": 0, "bit_width": 8 } ],
+      "condition": "(hdr.ipv4.ttl == 0)",
+      "size": 0
+    },
+    {
       "direction": "ingress",
-      "handle": 16777246,
+      "handle": 16777234,
       "name": "FabricIngress.acl.acl",
       "table_type": "match",
       "size": 2048,
@@ -163520,17 +155890,17 @@
                         "field_width": 2
                       },
                       {
-                        "field_name": "ipv4_src",
+                        "field_name": "ipv4_dst",
                         "lsb_mem_word_offset": 1,
                         "lsb_mem_word_idx": 5,
                         "msb_mem_word_idx": 5,
                         "source": "spec",
                         "start_bit": 0,
-                        "field_width": 32
+                        "field_width": 16
                       },
                       {
-                        "field_name": "ig_port",
-                        "lsb_mem_word_offset": 33,
+                        "field_name": "icmp_code",
+                        "lsb_mem_word_offset": 17,
                         "lsb_mem_word_idx": 5,
                         "msb_mem_word_idx": 5,
                         "source": "spec",
@@ -163538,206 +155908,125 @@
                         "field_width": 8
                       },
                       {
-                        "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 4,
-                        "msb_mem_word_idx": 4,
-                        "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 4,
-                        "msb_mem_word_idx": 4,
-                        "source": "spec",
-                        "start_bit": 40,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 4,
-                        "msb_mem_word_idx": 4,
-                        "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 4,
-                        "msb_mem_word_idx": 4,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 4,
-                        "msb_mem_word_idx": 4,
-                        "source": "spec",
-                        "start_bit": 32,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "l4_dport",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "l4_dport",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "l4_sport",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "l4_sport",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 24,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_src",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 32,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "eth_src",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
                         "field_name": "icmp_type",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 8
                       },
                       {
-                        "field_name": "icmp_code",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
+                        "field_name": "ip_proto",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 8
                       },
                       {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 32,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "eth_src",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 32,
+                        "field_width": 8
+                      },
+                      {
                         "field_name": "eth_src",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 40,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_src",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "ipv4_src",
                         "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "ipv4_src",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
                         "source": "spec",
                         "start_bit": 8,
                         "field_width": 8
                       },
                       {
-                        "field_name": "eth_src",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
                         "field_name": "eth_type",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 16
                       },
                       {
-                        "field_name": "ip_proto",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
+                        "field_name": "ipv4_src",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 8
                       },
                       {
-                        "field_name": "vlan_id",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
+                        "field_name": "l4_dport",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
                         "source": "spec",
                         "start_bit": 8,
-                        "field_width": 4
+                        "field_width": 8
                       },
                       {
-                        "field_name": "vlan_id",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
+                        "field_name": "l4_dport",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 8
                       },
                       {
                         "field_name": "ig_port",
-                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_offset": 9,
                         "lsb_mem_word_idx": 1,
                         "msb_mem_word_idx": 1,
                         "source": "spec",
@@ -163745,12 +156034,84 @@
                         "field_width": 1
                       },
                       {
+                        "field_name": "ig_port",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_src",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "l4_sport",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "l4_sport",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "vlan_id",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "vlan_id",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 4
+                      },
+                      {
                         "field_name": "ipv4_dst",
                         "lsb_mem_word_offset": 41,
                         "lsb_mem_word_idx": 5,
                         "msb_mem_word_idx": 5,
                         "source": "spec",
-                        "start_bit": 0,
+                        "start_bit": 24,
                         "field_width": 4
                       },
                       {
@@ -163759,7 +156120,7 @@
                         "lsb_mem_word_idx": 4,
                         "msb_mem_word_idx": 4,
                         "source": "spec",
-                        "start_bit": 4,
+                        "start_bit": 28,
                         "field_width": 4
                       },
                       {
@@ -163768,7 +156129,7 @@
                         "lsb_mem_word_idx": 3,
                         "msb_mem_word_idx": 3,
                         "source": "spec",
-                        "start_bit": 24,
+                        "start_bit": 16,
                         "field_width": 4
                       },
                       {
@@ -163777,16 +156138,7 @@
                         "lsb_mem_word_idx": 2,
                         "msb_mem_word_idx": 2,
                         "source": "spec",
-                        "start_bit": 28,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 29,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
+                        "start_bit": 20,
                         "field_width": 4
                       },
                       {
@@ -163800,12 +156152,12 @@
                       },
                       {
                         "field_name": "--unused--",
-                        "lsb_mem_word_offset": 42,
+                        "lsb_mem_word_offset": 10,
                         "lsb_mem_word_idx": 1,
                         "msb_mem_word_idx": 1,
                         "source": "zero",
                         "start_bit": 0,
-                        "field_width": 3
+                        "field_width": 7
                       }
                     ]
                   }
@@ -163826,391 +156178,16 @@
             "ternary_indirection_stage_table": {
               "stage_number": 9,
               "stage_table_type": "ternary_indirection",
-              "size": 32768,
+              "size": 2048,
               "pack_format": [
                 {
                   "memory_word_width": 128,
                   "table_word_width": 128,
-                  "entries_per_table_word": 32,
+                  "entries_per_table_word": 2,
                   "number_memory_units_per_table_word": 1,
                   "entries": [
                     {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 127,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 123,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 119,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 115,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 111,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 107,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 103,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 99,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 95,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 91,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 87,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 83,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 79,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 75,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 71,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
+                      "entry_number": 1,
                       "fields": [
                         {
                           "start_bit": 0,
@@ -164224,388 +156201,23 @@
                         },
                         {
                           "start_bit": 0,
-                          "field_width": 1,
+                          "field_width": 32,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
-                          "source": "zero",
+                          "source": "immediate",
                           "enable_pfe": false,
                           "lsb_mem_word_offset": 67,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
+                          "field_name": "immediate"
                         },
                         {
                           "start_bit": 0,
-                          "field_width": 1,
+                          "field_width": 29,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
                           "source": "zero",
                           "enable_pfe": false,
-                          "lsb_mem_word_offset": 63,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 59,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 55,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 51,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 47,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 43,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 39,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 35,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 31,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 27,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 23,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 19,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 15,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 11,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 7,
-                          "field_name": "--padding_3_3--"
+                          "lsb_mem_word_offset": 99,
+                          "field_name": "--padding_35_63--"
                         }
                       ]
                     },
@@ -164624,13 +156236,23 @@
                         },
                         {
                           "start_bit": 0,
-                          "field_width": 1,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 3,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 29,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
                           "source": "zero",
                           "enable_pfe": false,
-                          "lsb_mem_word_offset": 3,
-                          "field_name": "--padding_3_3--"
+                          "lsb_mem_word_offset": 35,
+                          "field_name": "--padding_35_63--"
                         }
                       ]
                     }
@@ -164645,7 +156267,7 @@
               "action_format": [
                 {
                   "action_name": "FabricIngress.acl.set_next_id_acl",
-                  "action_handle": 536870951,
+                  "action_handle": 536870947,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 160,
@@ -164658,11 +156280,26 @@
                       "next_table_stage_no": 10
                     }
                   ],
-                  "immediate_fields": []
+                  "immediate_fields": [
+                    {
+                      "param_name": "next_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 24,
+                      "dest_width": 8
+                    },
+                    {
+                      "param_name": "next_id",
+                      "param_type": "parameter",
+                      "param_shift": 8,
+                      "dest_start": 0,
+                      "dest_width": 24
+                    }
+                  ]
                 },
                 {
                   "action_name": "FabricIngress.acl.punt_to_cpu",
-                  "action_handle": 536870952,
+                  "action_handle": 536870948,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 160,
@@ -164675,11 +156312,20 @@
                       "next_table_stage_no": 10
                     }
                   ],
-                  "immediate_fields": []
+                  "immediate_fields": [
+                    {
+                      "param_name": "constant_320",
+                      "param_type": "constant",
+                      "const_value": 320,
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 9
+                    }
+                  ]
                 },
                 {
                   "action_name": "FabricIngress.acl.set_clone_session_id",
-                  "action_handle": 536870953,
+                  "action_handle": 536870949,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 160,
@@ -164692,11 +156338,19 @@
                       "next_table_stage_no": 10
                     }
                   ],
-                  "immediate_fields": []
+                  "immediate_fields": [
+                    {
+                      "param_name": "clone_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 10
+                    }
+                  ]
                 },
                 {
                   "action_name": "FabricIngress.acl.drop",
-                  "action_handle": 536870954,
+                  "action_handle": 536870950,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 160,
@@ -164713,7 +156367,7 @@
                 },
                 {
                   "action_name": "FabricIngress.acl.nop_acl",
-                  "action_handle": 536870955,
+                  "action_handle": 536870951,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 160,
@@ -164734,13 +156388,7 @@
         ],
         "match_type": "ternary"
       },
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554440,
-          "name": "FabricIngress.acl.acl$action"
-        }
-      ],
+      "action_data_table_refs": [],
       "selection_table_refs": [],
       "meter_table_refs": [],
       "statistics_table_refs": [
@@ -164754,7 +156402,7 @@
       "actions": [
         {
           "name": "FabricIngress.acl.set_next_id_acl",
-          "handle": 536870951,
+          "handle": 536870947,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -164770,13 +156418,6 @@
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.source" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
               "dst": { "type": "phv", "name": "fabric_metadata.is_multicast" },
               "dst_mask": { "type": "immediate", "name": "1" },
               "src1": { "type": "immediate", "name": "0" }
@@ -164808,7 +156449,7 @@
         },
         {
           "name": "FabricIngress.acl.punt_to_cpu",
-          "handle": 536870952,
+          "handle": 536870948,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -164831,13 +156472,6 @@
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.source" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
               "dst": { "type": "phv", "name": "fabric_metadata.is_multicast" },
               "dst_mask": { "type": "immediate", "name": "1" },
               "src1": { "type": "immediate", "name": "0" }
@@ -164862,7 +156496,7 @@
         },
         {
           "name": "FabricIngress.acl.set_clone_session_id",
-          "handle": 536870953,
+          "handle": 536870949,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -164891,13 +156525,6 @@
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.source" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
               "dst": { "type": "phv", "name": "fabric_metadata.is_multicast" },
               "dst_mask": { "type": "immediate", "name": "1" },
               "src1": { "type": "immediate", "name": "0" }
@@ -164929,7 +156556,7 @@
         },
         {
           "name": "FabricIngress.acl.drop",
-          "handle": 536870954,
+          "handle": 536870950,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -164950,13 +156577,6 @@
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.source" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
               "dst": { "type": "phv", "name": "fabric_metadata.is_multicast" },
               "dst_mask": { "type": "immediate", "name": "1" },
               "src1": { "type": "immediate", "name": "0" }
@@ -164981,7 +156601,7 @@
         },
         {
           "name": "FabricIngress.acl.nop_acl",
-          "handle": 536870955,
+          "handle": 536870951,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -164990,13 +156610,6 @@
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.source" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
               "dst": { "type": "phv", "name": "fabric_metadata.is_multicast" },
               "dst_mask": { "type": "immediate", "name": "1" },
               "src1": { "type": "immediate", "name": "0" }
@@ -165020,7 +156633,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870955,
+      "default_action_handle": 536870951,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -165215,1148 +156828,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 33554440,
-      "name": "FabricIngress.acl.acl$action",
-      "table_type": "action",
-      "size": 2048,
-      "stage_tables": [
-        {
-          "stage_number": 9,
-          "size": 2048,
-          "stage_table_type": "action_data",
-          "logical_table_id": 0,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 65,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 73,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 66,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 68,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 74,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 52,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 9,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 2,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 4,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 10,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 52,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870954
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 65,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 73,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 66,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 68,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 74,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 52,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 9,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 2,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 4,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 10,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 52,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870955
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 65,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 73,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 9,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 320, "dest_width": 9 } ],
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 66,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 52,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 9,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 9,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 320, "dest_width": 9 } ],
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 2,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 52,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870952
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 65,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 73,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 10,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "clone_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 66,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 68,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 74,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 38,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 90,
-                      "field_name": "--padding_26_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 9,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 10,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "clone_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 2,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 4,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 10,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 38,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 26,
-                      "field_name": "--padding_26_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870953
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 65,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 73,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "next_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 66,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 68,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 74,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 20,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 9,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "next_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 2,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 4,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 10,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 20,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_31--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870951
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricIngress.acl.drop",
-          "handle": 536870954,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricIngress.acl.nop_acl",
-          "handle": 536870955,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricIngress.acl.punt_to_cpu",
-          "handle": 536870952,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricIngress.acl.set_clone_session_id",
-          "handle": 536870953,
-          "p4_parameters": [
-            {
-              "name": "clone_id",
-              "start_bit": 0,
-              "position": 0,
-              "bit_width": 32
-            }
-          ]
-        },
-        {
-          "name": "FabricIngress.acl.set_next_id_acl",
-          "handle": 536870951,
-          "p4_parameters": [
-            {
-              "name": "next_id",
-              "start_bit": 0,
-              "position": 0,
-              "bit_width": 32
-            }
-          ]
-        }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777247,
+      "handle": 16777235,
       "name": "FabricIngress.process_set_source_sink.tb_set_source",
       "table_type": "match",
       "size": 511,
@@ -166371,7 +156843,7 @@
         }
       ],
       "stateful_table_refs": [],
-      "default_action_handle": 536870968,
+      "default_action_handle": 536870964,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -166541,7 +157013,7 @@
             "action_format": [
               {
                 "action_name": "nop",
-                "action_handle": 536870968,
+                "action_handle": 536870964,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 4294967295,
                 "next_table_full": 161,
@@ -166558,7 +157030,7 @@
               },
               {
                 "action_name": "FabricIngress.process_set_source_sink.int_set_source",
-                "action_handle": 536870967,
+                "action_handle": 536870963,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 161,
@@ -166716,7 +157188,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870968,
+          "handle": 536870964,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -166736,7 +157208,7 @@
         },
         {
           "name": "FabricIngress.process_set_source_sink.int_set_source",
-          "handle": 536870967,
+          "handle": 536870963,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -166776,8 +157248,8 @@
     {
       "direction": "ingress",
       "attached_to": "FabricIngress.process_set_source_sink.tb_set_source",
-      "handle": 1879048230,
-      "name": "cond-18",
+      "handle": 1879048223,
+      "name": "cond-12",
       "table_type": "condition",
       "stage_tables": [
         {
@@ -166795,7 +157267,7 @@
         }
       ],
       "condition_fields": [
-        { "name": "fabric_metadata.skip_next", "start_bit": 2, "bit_width": 1 }
+        { "name": "fabric_metadata.skip_next", "start_bit": 1, "bit_width": 1 }
       ],
       "condition": "(fabric_metadata.skip_next == 0)",
       "size": 0
@@ -166837,7 +157309,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777248,
+      "handle": 16777236,
       "name": "FabricIngress.next.xconnect",
       "table_type": "match",
       "size": 4096,
@@ -166852,7 +157324,7 @@
         }
       ],
       "stateful_table_refs": [],
-      "default_action_handle": 536870958,
+      "default_action_handle": 536870954,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -166900,112 +157372,100 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 64
                       },
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 73
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 81
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
                       }
                     ],
                     "hash_bit": 0,
@@ -167014,208 +157474,226 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 76
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 112
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
                       },
                       {
                         "field_bit": 1,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 2,
@@ -167224,82 +157702,106 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 84
                       },
                       {
                         "field_bit": 2,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 3,
@@ -167308,304 +157810,346 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 85
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 97
                       },
                       {
                         "field_bit": 4,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 5,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 6,
-                        "field_name": "next_id",
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 70
+                        "hash_match_group_bit": 102
                       },
                       {
-                        "field_bit": 8,
-                        "field_name": "next_id",
+                        "field_bit": 7,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 103
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 112
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
                       },
                       {
                         "field_bit": 5,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 5,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
                       }
                     ],
                     "hash_bit": 6,
@@ -167614,106 +158158,118 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 77
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 88
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "next_id",
+                        "field_bit": 2,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 98
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "next_id",
+                        "field_bit": 3,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 99
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "next_id",
+                        "field_bit": 5,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 101
                       },
                       {
                         "field_bit": 6,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 7,
@@ -167722,466 +158278,526 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 8,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
                         "field_bit": 8,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 104
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 104
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 64
                       },
                       {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 11,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 5,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 79
                       },
                       {
                         "field_bit": 0,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 96
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      }
+                    ],
+                    "hash_bit": 8,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 104
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 104
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 10,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 11,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 12,
@@ -168190,460 +158806,508 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
                         "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 72
+                        "hash_match_group_bit": 64
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 83
                       },
                       {
                         "field_bit": 1,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 97
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
                       },
                       {
                         "field_bit": 2,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 98
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
                       },
                       {
                         "field_bit": 3,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
-                    "hash_bit": 15,
-                    "seed": 0
+                    "hash_bit": 13,
+                    "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 66
+                        "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 3,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 67
+                        "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 6,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 70
+                        "hash_match_group_bit": 71
                       },
                       {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
+                        "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 84
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 97
                       },
                       {
                         "field_bit": 4,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 16,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
                       },
                       {
                         "field_bit": 5,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 14,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 16,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 17,
@@ -168652,154 +159316,202 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 3,
+                        "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 67
                       },
                       {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 88
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 97
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "next_id",
+                        "field_bit": 2,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
                       },
                       {
                         "field_bit": 7,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 18,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 96
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
                       }
                     ],
                     "hash_bit": 19,
@@ -168808,106 +159520,106 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 78
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "next_id",
+                        "field_bit": 0,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 96
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "next_id",
+                        "field_bit": 2,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
                       },
                       {
                         "field_bit": 7,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 20,
@@ -168916,130 +159628,82 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 66
+                        "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 6,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 70
                       },
                       {
-                        "field_bit": 7,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 71
                       },
                       {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "next_id",
+                        "field_bit": 6,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 102
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "next_id",
+                        "field_bit": 7,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 103
                       },
                       {
                         "field_bit": 8,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 104
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 21,
@@ -169048,100 +159712,94 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 73
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 71
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 75
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 112
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 114
                       },
                       {
-                        "field_bit": 30,
+                        "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 22,
@@ -169150,280 +159808,250 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
+                        "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 67
                       },
                       {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      }
-                    ],
-                    "hash_bit": 23,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 1,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 82
                       },
                       {
                         "field_bit": 1,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
                       }
                     ],
-                    "hash_bit": 24,
+                    "hash_bit": 23,
                     "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
                         "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 72
+                        "hash_match_group_bit": 64
                       },
                       {
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 73
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 83
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 2,
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 4,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 98
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 25,
@@ -169432,478 +160060,574 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
                         "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
+                        "hash_match_group_bit": 64
                       },
                       {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 85
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
                       },
                       {
                         "field_bit": 5,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 5,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 26,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
                       },
                       {
                         "field_bit": 6,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 29,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 30,
@@ -169912,124 +160636,76 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 71
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "next_id",
+                        "field_bit": 0,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 96
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
+                        "field_bit": 2,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 98
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "next_id",
+                        "field_bit": 6,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 102
                       },
                       {
                         "field_bit": 7,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 31,
@@ -170038,304 +160714,352 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 75
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 97
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "next_id",
+                        "field_bit": 2,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 98
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "next_id",
+                        "field_bit": 4,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
                       },
                       {
                         "field_bit": 8,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 104
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 112
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
                       },
                       {
                         "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 1,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 96
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
                       }
                     ],
                     "hash_bit": 34,
@@ -170344,106 +161068,124 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 83
                       },
                       {
                         "field_bit": 1,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 35,
@@ -170452,94 +161194,94 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 4,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 84
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 97
                       },
                       {
                         "field_bit": 2,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 36,
@@ -170548,82 +161290,106 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 5,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 6,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 70
                       },
                       {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 77
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 85
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 97
                       },
                       {
                         "field_bit": 3,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 37,
@@ -170632,224 +161398,224 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
                         "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 38,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
+                        "hash_match_group_bit": 64
                       },
                       {
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 73
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 5,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 86
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 113
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
+                        "hash_match_group_bit": 116
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
                       {
-                        "field_bit": 31,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
                       },
                       {
                         "field_bit": 5,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 39,
-                    "seed": 1
+                    "seed": 0
                   }
                 ],
                 "hash_function_number": 1,
@@ -170867,14 +161633,14 @@
                 ],
                 "ghost_bit_info": [
                   { "field_name": "next_id", "bit_in_match_spec": 0 },
+                  { "field_name": "next_id", "bit_in_match_spec": 1 },
+                  { "field_name": "next_id", "bit_in_match_spec": 2 },
+                  { "field_name": "next_id", "bit_in_match_spec": 3 },
+                  { "field_name": "next_id", "bit_in_match_spec": 4 },
+                  { "field_name": "next_id", "bit_in_match_spec": 5 },
+                  { "field_name": "next_id", "bit_in_match_spec": 6 },
+                  { "field_name": "next_id", "bit_in_match_spec": 7 },
                   { "field_name": "ig_port", "bit_in_match_spec": 0 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 1 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 2 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 3 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 4 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 5 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 6 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 7 },
                   { "field_name": "ig_port", "bit_in_match_spec": 8 }
                 ]
               }
@@ -170882,7 +161648,7 @@
             "action_format": [
               {
                 "action_name": "nop",
-                "action_handle": 536870958,
+                "action_handle": 536870954,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 4294967295,
                 "next_table_full": 176,
@@ -170899,7 +161665,7 @@
               },
               {
                 "action_name": "FabricIngress.next.output_xconnect",
-                "action_handle": 536870956,
+                "action_handle": 536870952,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 176,
@@ -170924,7 +161690,7 @@
               },
               {
                 "action_name": "FabricIngress.next.set_next_id_xconnect",
-                "action_handle": 536870957,
+                "action_handle": 536870953,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 176,
@@ -170942,8 +161708,15 @@
                     "param_name": "next_id",
                     "param_type": "parameter",
                     "param_shift": 0,
+                    "dest_start": 24,
+                    "dest_width": 8
+                  },
+                  {
+                    "param_name": "next_id",
+                    "param_type": "parameter",
+                    "param_shift": 8,
                     "dest_start": 0,
-                    "dest_width": 32
+                    "dest_width": 24
                   }
                 ]
               }
@@ -170981,7 +161754,7 @@
                           "match_mode": "unused"
                         },
                         {
-                          "field_name": "next_id",
+                          "field_name": "ig_port",
                           "source": "spec",
                           "lsb_mem_word_offset": 33,
                           "start_bit": 1,
@@ -171114,7 +161887,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "next_id",
+                            "field_name": "ig_port",
                             "source": "spec",
                             "lsb_mem_word_offset": 33,
                             "start_bit": 1,
@@ -171248,7 +162021,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "next_id",
+                            "field_name": "ig_port",
                             "source": "spec",
                             "lsb_mem_word_offset": 33,
                             "start_bit": 1,
@@ -171382,7 +162155,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "next_id",
+                            "field_name": "ig_port",
                             "source": "spec",
                             "lsb_mem_word_offset": 33,
                             "start_bit": 1,
@@ -171516,7 +162289,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "next_id",
+                            "field_name": "ig_port",
                             "source": "spec",
                             "lsb_mem_word_offset": 33,
                             "start_bit": 1,
@@ -171610,7 +162383,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870958,
+          "handle": 536870954,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -171630,7 +162403,7 @@
         },
         {
           "name": "FabricIngress.next.output_xconnect",
-          "handle": 536870956,
+          "handle": 536870952,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -171673,7 +162446,7 @@
         },
         {
           "name": "FabricIngress.next.set_next_id_xconnect",
-          "handle": 536870957,
+          "handle": 536870953,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -171759,7 +162532,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777249,
+      "handle": 16777237,
       "name": "FabricIngress.next.next_vlan",
       "table_type": "match",
       "size": 2048,
@@ -171774,7 +162547,7 @@
         }
       ],
       "stateful_table_refs": [],
-      "default_action_handle": 536870966,
+      "default_action_handle": 536870962,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -171810,52 +162583,88 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 0
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 0,
@@ -171864,64 +162673,70 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 1
                       },
                       {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 1,
@@ -171930,58 +162745,88 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 7
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 13
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 2,
@@ -171990,256 +162835,214 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 3,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 3
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 13
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 1,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 18
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 5,
@@ -172248,256 +163051,220 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 6
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 6,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 5,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 50
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 51
                       }
                     ],
                     "hash_bit": 8,
@@ -172506,244 +163273,244 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 24
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 10,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 11,
@@ -172752,196 +163519,232 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 1
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 12,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      }
+                    ],
+                    "hash_bit": 12,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
+                      }
+                    ],
+                    "hash_bit": 13,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 14,
@@ -172950,58 +163753,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 4,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 4
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 48
                       },
                       {
-                        "field_bit": 31,
+                        "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 15,
@@ -173010,76 +163819,88 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 50
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 52
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 16,
@@ -173088,64 +163909,58 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 50
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 51
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 17,
@@ -173154,139 +163969,37 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
+                        "field_bit": 5,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
@@ -173295,193 +164008,235 @@
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 53
                       }
                     ],
-                    "hash_bit": 19,
-                    "seed": 1
+                    "hash_bit": 18,
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 8,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 8
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 20,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 20,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 21,
@@ -173490,160 +164245,148 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 0
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      }
-                    ],
-                    "hash_bit": 22,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 22,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 23,
@@ -173652,238 +164395,208 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 25,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 1,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 50
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 25,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 26,
@@ -173892,133 +164605,337 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 49
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 23,
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 29,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 30,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 6,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
@@ -174027,259 +164944,25 @@
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 30,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 31,
@@ -174288,223 +164971,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 34,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 2
@@ -174513,85 +164980,307 @@
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 24
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 34,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 35,
@@ -174600,88 +165289,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 3,
+                        "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 23,
+                        "field_bit": 1,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 18
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 53
                       }
                     ],
                     "hash_bit": 36,
@@ -174690,244 +165355,208 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 4,
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 37,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 52
                       }
                     ],
-                    "hash_bit": 38,
+                    "hash_bit": 37,
                     "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 20
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
                       },
                       {
-                        "field_bit": 31,
+                        "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
                       }
                     ],
                     "hash_bit": 39,
@@ -174936,8 +165565,6 @@
                 ],
                 "hash_function_number": 0,
                 "ghost_bit_to_hash_bit": [
-                  [ 0, 11, 22, 33 ],
-                  [ 1, 12, 23, 34 ],
                   [ 2, 13, 24, 35 ],
                   [ 3, 14, 25, 36 ],
                   [ 4, 15, 26, 37 ],
@@ -174945,7 +165572,9 @@
                   [ 6, 17, 28, 39 ],
                   [ 7, 18, 29, 30 ],
                   [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ]
+                  [ 9, 10, 21, 32 ],
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ]
                 ],
                 "ghost_bit_info": [
                   { "field_name": "next_id", "bit_in_match_spec": 0 },
@@ -174964,7 +165593,7 @@
             "action_format": [
               {
                 "action_name": "nop",
-                "action_handle": 536870966,
+                "action_handle": 536870962,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 4294967295,
                 "next_table_full": 177,
@@ -174981,7 +165610,7 @@
               },
               {
                 "action_name": "FabricIngress.next.set_vlan",
-                "action_handle": 536870965,
+                "action_handle": 536870961,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 177,
@@ -175647,7 +166276,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870966,
+          "handle": 536870962,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -175667,7 +166296,7 @@
         },
         {
           "name": "FabricIngress.next.set_vlan",
-          "handle": 536870965,
+          "handle": 536870961,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -175753,7 +166382,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777250,
+      "handle": 16777238,
       "name": "FabricIngress.next.multicast",
       "table_type": "match",
       "size": 2048,
@@ -175768,7 +166397,7 @@
         }
       ],
       "stateful_table_refs": [],
-      "default_action_handle": 536870964,
+      "default_action_handle": 536870960,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -175804,97 +166433,85 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 64
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 79
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 113
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 117
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 0,
-                    "seed": 0
+                    "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
@@ -175903,94 +166520,70 @@
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 76
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 113
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 1,
-                    "seed": 0
+                    "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 66
@@ -175999,529 +166592,469 @@
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      }
-                    ],
-                    "hash_bit": 5,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 71
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 81
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 5,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 6,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 8,
@@ -176530,175 +167063,67 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 74
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 76
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 88
@@ -176707,19 +167132,97 @@
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
                       {
-                        "field_bit": 31,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
                       }
                     ],
                     "hash_bit": 10,
@@ -176728,7 +167231,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 64
@@ -176737,61 +167240,55 @@
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 112
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 11,
@@ -176800,7 +167297,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
@@ -176809,73 +167306,31 @@
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 12,
@@ -176884,82 +167339,58 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 74
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 81
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 117
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 13,
@@ -176968,58 +167399,88 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 1,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
                       },
                       {
-                        "field_bit": 30,
+                        "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 117
                       }
                     ],
                     "hash_bit": 14,
@@ -177028,178 +167489,160 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 4,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 15,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 11,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 77
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 83
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 115
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 117
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
                       }
                     ],
                     "hash_bit": 16,
@@ -177208,166 +167651,124 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 71
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 85
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 86
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 112
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 113
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 116
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 18,
@@ -177376,127 +167777,25 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 23,
+                        "field_bit": 6,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 87
@@ -177505,25 +167804,109 @@
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 112
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
+                        "hash_match_group_bit": 117
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
                       {
-                        "field_bit": 31,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 20,
@@ -177532,733 +167915,85 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 21,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 22,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      }
-                    ],
-                    "hash_bit": 23,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 25,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 76
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 88
                       },
                       {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 117
                       }
                     ],
-                    "hash_bit": 29,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      }
-                    ],
-                    "hash_bit": 30,
+                    "hash_bit": 21,
                     "seed": 0
                   },
                   {
@@ -178267,76 +168002,76 @@
                         "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 72
+                        "hash_match_group_bit": 64
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 77
                       },
                       {
-                        "field_bit": 23,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 115
                       }
                     ],
-                    "hash_bit": 31,
+                    "hash_bit": 22,
                     "seed": 1
                   },
                   {
@@ -178345,367 +168080,1039 @@
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 74
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 118
                       }
                     ],
-                    "hash_bit": 34,
+                    "hash_bit": 23,
                     "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 25,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
                         "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 26,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 29,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 86
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 112
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      }
-                    ],
-                    "hash_bit": 35,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 30,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 31,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 34,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 35,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 36,
@@ -178714,64 +169121,88 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 4,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 68
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 37,
@@ -178780,182 +169211,150 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 38,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 84
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 112
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 39,
-                    "seed": 0
+                    "seed": 1
                   }
                 ],
                 "hash_function_number": 1,
                 "ghost_bit_to_hash_bit": [
-                  [ 0, 11, 22, 33 ],
-                  [ 1, 12, 23, 34 ],
                   [ 2, 13, 24, 35 ],
                   [ 3, 14, 25, 36 ],
                   [ 4, 15, 26, 37 ],
@@ -178963,7 +169362,9 @@
                   [ 6, 17, 28, 39 ],
                   [ 7, 18, 29, 30 ],
                   [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ]
+                  [ 9, 10, 21, 32 ],
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ]
                 ],
                 "ghost_bit_info": [
                   { "field_name": "next_id", "bit_in_match_spec": 0 },
@@ -178982,7 +169383,7 @@
             "action_format": [
               {
                 "action_name": "nop",
-                "action_handle": 536870964,
+                "action_handle": 536870960,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 4294967295,
                 "next_table_full": 178,
@@ -178999,7 +169400,7 @@
               },
               {
                 "action_name": "FabricIngress.next.set_mcast_group_id",
-                "action_handle": 536870963,
+                "action_handle": 536870959,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 178,
@@ -179658,7 +170059,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870964,
+          "handle": 536870960,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -179678,7 +170079,7 @@
         },
         {
           "name": "FabricIngress.next.set_mcast_group_id",
-          "handle": 536870963,
+          "handle": 536870959,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -179771,14 +170172,14 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777251,
+      "handle": 16777239,
       "name": "FabricIngress.next.hashed",
       "table_type": "match",
       "size": 2048,
       "action_data_table_refs": [
         {
           "how_referenced": "indirect",
-          "handle": 33554441,
+          "handle": 33554442,
           "name": "FabricIngress.next.hashed_selector"
         }
       ],
@@ -179798,7 +170199,7 @@
         }
       ],
       "stateful_table_refs": [],
-      "default_action_handle": 536870962,
+      "default_action_handle": 536870958,
       "action_profile": "FabricIngress.next.hashed_selector",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -179834,7 +170235,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 0
@@ -179843,55 +170244,67 @@
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 0,
@@ -179900,82 +170313,58 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 1
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 1,
@@ -179984,7 +170373,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 2
@@ -179993,181 +170382,223 @@
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 7
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 4,
@@ -180176,82 +170607,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 5
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 5,
@@ -180260,58 +170673,82 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 6
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 8
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 6,
@@ -180320,91 +170757,121 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 7,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 7
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 23,
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 6,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 23
@@ -180413,97 +170880,73 @@
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 51
                       }
                     ],
                     "hash_bit": 8,
-                    "seed": 1
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 24
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 9,
@@ -180512,82 +170955,58 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 7
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 50
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 10,
@@ -180596,7 +171015,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 0
@@ -180605,67 +171024,67 @@
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 11,
@@ -180674,46 +171093,94 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 1
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 8
                       },
                       {
-                        "field_bit": 23,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
                       }
                     ],
                     "hash_bit": 12,
@@ -180722,7 +171189,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 2
@@ -180731,61 +171198,79 @@
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 13,
@@ -180794,556 +171279,556 @@
                   {
                     "bits_to_xor": [
                       {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 14,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
                         "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 16,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
                         "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      }
-                    ],
-                    "hash_bit": 15,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 16,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 7
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 8
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
                         "hash_match_group_bit": 22
                       },
                       {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 18,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
                         "hash_match_group_bit": 23
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
                       {
-                        "field_bit": 31,
+                        "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 20,
@@ -181352,73 +171837,43 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 24
@@ -181427,97 +171882,91 @@
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 50
                       }
                     ],
                     "hash_bit": 21,
-                    "seed": 1
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 0
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 30,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 22,
@@ -181526,64 +171975,58 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 1
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 23,
@@ -181592,178 +172035,148 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
                       }
                     ],
                     "hash_bit": 25,
@@ -181772,58 +172185,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 4,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 49
                       },
                       {
-                        "field_bit": 30,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 50
                       }
                     ],
                     "hash_bit": 26,
@@ -181832,7 +172251,13 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 5
@@ -181841,73 +172266,85 @@
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 27,
@@ -181916,154 +172353,154 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 6
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
                       },
                       {
-                        "field_bit": 31,
+                        "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 29,
@@ -182072,49 +172509,61 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 7
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 5,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 22
@@ -182123,25 +172572,25 @@
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 30,
@@ -182150,79 +172599,253 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
+                        "field_bit": 6,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 31,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
                       }
                     ],
-                    "hash_bit": 31,
+                    "hash_bit": 33,
                     "seed": 0
                   },
                   {
@@ -182231,433 +172854,319 @@
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 1
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 34,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 35,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 8
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 36,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      }
+                    ],
+                    "hash_bit": 34,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 35,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 36,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 37,
@@ -182666,178 +173175,142 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 38,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 39,
@@ -182846,8 +173319,6 @@
                 ],
                 "hash_function_number": 2,
                 "ghost_bit_to_hash_bit": [
-                  [ 0, 11, 22, 33 ],
-                  [ 1, 12, 23, 34 ],
                   [ 2, 13, 24, 35 ],
                   [ 3, 14, 25, 36 ],
                   [ 4, 15, 26, 37 ],
@@ -182855,7 +173326,9 @@
                   [ 6, 17, 28, 39 ],
                   [ 7, 18, 29, 30 ],
                   [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ]
+                  [ 9, 10, 21, 32 ],
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ]
                 ],
                 "ghost_bit_info": [
                   { "field_name": "next_id", "bit_in_match_spec": 0 },
@@ -182874,7 +173347,7 @@
             "action_format": [
               {
                 "action_name": "nop",
-                "action_handle": 536870962,
+                "action_handle": 536870958,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 4294967295,
                 "next_table_full": 255,
@@ -182885,7 +173358,7 @@
               },
               {
                 "action_name": "FabricIngress.next.output_hashed",
-                "action_handle": 536870959,
+                "action_handle": 536870955,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 255,
@@ -182896,7 +173369,7 @@
               },
               {
                 "action_name": "FabricIngress.next.routing_hashed",
-                "action_handle": 536870960,
+                "action_handle": 536870956,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 255,
@@ -182907,7 +173380,7 @@
               },
               {
                 "action_name": "FabricIngress.next.mpls_routing_hashed",
-                "action_handle": 536870961,
+                "action_handle": 536870957,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 255,
@@ -183717,7 +174190,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870962,
+          "handle": 536870958,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -183737,7 +174210,7 @@
         },
         {
           "name": "FabricIngress.next.output_hashed",
-          "handle": 536870959,
+          "handle": 536870955,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -183777,7 +174250,7 @@
         },
         {
           "name": "FabricIngress.next.routing_hashed",
-          "handle": 536870960,
+          "handle": 536870956,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -183833,7 +174306,7 @@
         },
         {
           "name": "FabricIngress.next.mpls_routing_hashed",
-          "handle": 536870961,
+          "handle": 536870957,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -183914,7 +174387,7 @@
       "selection_key_name": "undefined",
       "how_referenced": "indirect",
       "max_port_pool_size": 120,
-      "bound_to_action_data_table_handle": 33554441,
+      "bound_to_action_data_table_handle": 33554442,
       "stage_tables": [
         {
           "stage_number": 11,
@@ -183942,7 +174415,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 33554441,
+      "handle": 33554442,
       "name": "FabricIngress.next.hashed_selector",
       "table_type": "action",
       "size": 32768,
@@ -184045,7 +174518,7 @@
                   ]
                 }
               ],
-              "action_handle": 536870961
+              "action_handle": 536870957
             },
             {
               "memory_word_width": 128,
@@ -184079,7 +174552,7 @@
                   ]
                 }
               ],
-              "action_handle": 536870959
+              "action_handle": 536870955
             },
             {
               "memory_word_width": 128,
@@ -184163,7 +174636,7 @@
                   ]
                 }
               ],
-              "action_handle": 536870960
+              "action_handle": 536870956
             },
             {
               "memory_word_width": 128,
@@ -184187,7 +174660,7 @@
                   ]
                 }
               ],
-              "action_handle": 536870962
+              "action_handle": 536870958
             }
           ],
           "memory_resource_allocation": {
@@ -184232,7 +174705,7 @@
       "actions": [
         {
           "name": "FabricIngress.next.mpls_routing_hashed",
-          "handle": 536870961,
+          "handle": 536870957,
           "p4_parameters": [
             {
               "name": "port_num",
@@ -184252,7 +174725,7 @@
         },
         {
           "name": "FabricIngress.next.output_hashed",
-          "handle": 536870959,
+          "handle": 536870955,
           "p4_parameters": [
             {
               "name": "port_num",
@@ -184264,7 +174737,7 @@
         },
         {
           "name": "FabricIngress.next.routing_hashed",
-          "handle": 536870960,
+          "handle": 536870956,
           "p4_parameters": [
             {
               "name": "port_num",
@@ -184276,7 +174749,7 @@
             { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 }
           ]
         },
-        { "name": "nop", "handle": 536870962, "p4_parameters": [] }
+        { "name": "nop", "handle": 536870958, "p4_parameters": [] }
       ],
       "static_entries": [],
       "how_referenced": "indirect"
@@ -184370,7 +174843,7 @@
     { "stage": 2, "gress": "egress", "match_dependent": true },
     { "stage": 3, "gress": "ingress", "match_dependent": true },
     { "stage": 3, "gress": "egress", "match_dependent": true },
-    { "stage": 4, "gress": "ingress", "match_dependent": true },
+    { "stage": 4, "gress": "ingress", "match_dependent": false },
     { "stage": 4, "gress": "egress", "match_dependent": true },
     { "stage": 5, "gress": "ingress", "match_dependent": true },
     { "stage": 5, "gress": "egress", "match_dependent": true },
@@ -184421,17 +174894,22 @@
     {
       "fully_qualified_name": "mau[0].dp.match_input_xbar_din_power_ctl",
       "name": "stage_0_match_input_xbar_din_power_ctl",
-      "value": "0000000000000000000000000000002c00000000000000000000000000000000000000000000000000000003000000000000000000000048000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000000000000000000000"
+      "value": "0000000000000004000000000000002c00000000000000000000000000000000000000000000000000000003000000100000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[0].dp.xbar_hash.hash.parity_group_mask",
       "name": "stage_0_parity_group_mask",
-      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000003000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[1].rams.map_alu.stats_wrap[3].stats.statistics_ctl",
+      "name": "stage_1_statistics_ctl_3",
+      "value": "00000059"
     },
     {
       "fully_qualified_name": "mau[1].dp.match_input_xbar_din_power_ctl",
       "name": "stage_1_match_input_xbar_din_power_ctl",
-      "value": "0000000000000000000000000000000000000002000000080000008000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000000000000800000003100000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000004000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[1].dp.xbar_hash.hash.parity_group_mask",
@@ -184439,24 +174917,19 @@
       "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
-      "fully_qualified_name": "mau[2].rams.map_alu.stats_wrap[3].stats.statistics_ctl",
-      "name": "stage_2_statistics_ctl_3",
-      "value": "00000019"
-    },
-    {
       "fully_qualified_name": "mau[2].dp.match_input_xbar_din_power_ctl",
       "name": "stage_2_match_input_xbar_din_power_ctl",
-      "value": "000000060000000000000000000000000000000000000000000000800000000000000000000000a400000000000000000000000000000060000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000004000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[2].dp.xbar_hash.hash.hash_seed",
       "name": "stage_2_hash_seed",
-      "value": "00000000000000000000000000000001000000010000000100000001000000010000000000000001000000010000000100000001000000000000000000000001000000000000000000000000000000010000000100000000000000010000000000000001000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000001000000000000000200000000000000020000000300000003000000000000000000000003000000020000000200000001000000020000000200000003000000020000000300000000000000020000000200000003000000030000000000000001000000020000000300000002000000020000000200000003000000020000000000000002000000000000000300000003000000010000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[2].dp.xbar_hash.hash.parity_group_mask",
       "name": "stage_2_parity_group_mask",
-      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000001000000000000000400000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[3].rams.map_alu.stats_wrap[3].stats.statistics_ctl",
@@ -184466,62 +174939,57 @@
     {
       "fully_qualified_name": "mau[3].dp.match_input_xbar_din_power_ctl",
       "name": "stage_3_match_input_xbar_din_power_ctl",
-      "value": "0000004a00000000000000000000000000000048000000010000008000000000000000000000000400000000000000000000000100000040000000000000000000000080000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
-    },
-    {
-      "fully_qualified_name": "mau[3].dp.xbar_hash.hash.hash_seed",
-      "name": "stage_3_hash_seed",
-      "value": "00000001000000000000000300000000000000020000000000000000000000030000000300000000000000010000000100000000000000010000000100000001000000010000000300000000000000020000000200000001000000030000000000000003000000020000000000000000000000030000000100000002000000030000000200000001000000030000000100000000000000030000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000000000000000000000000000020000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004400000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[3].dp.xbar_hash.hash.parity_group_mask",
       "name": "stage_3_parity_group_mask",
-      "value": "00000003000000000000000400000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000001000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[4].dp.match_input_xbar_din_power_ctl",
       "name": "stage_4_match_input_xbar_din_power_ctl",
-      "value": "0000004a00000020000000000000000000000000000000010000000000000000000000000000001800000000000000000000000100000000000000000000000000000080000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[4].dp.xbar_hash.hash.hash_seed",
+      "name": "stage_4_hash_seed",
+      "value": "00000000000000000000000100000000000000000000000000000001000000010000000100000001000000000000000100000000000000010000000000000001000000010000000100000001000000010000000000000000000000010000000000000001000000010000000100000000000000000000000000000000000000010000000000000000000000000000000100000001000000000000000100000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[4].dp.xbar_hash.hash.parity_group_mask",
       "name": "stage_4_parity_group_mask",
-      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
-    },
-    {
-      "fully_qualified_name": "mau[5].rams.map_alu.stats_wrap[1].stats.statistics_ctl",
-      "name": "stage_5_statistics_ctl_1",
-      "value": "00000019"
-    },
-    {
-      "fully_qualified_name": "mau[5].rams.map_alu.stats_wrap[2].stats.statistics_ctl",
-      "name": "stage_5_statistics_ctl_2",
-      "value": "00000059"
+      "value": "00000001000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[5].rams.map_alu.stats_wrap[3].stats.statistics_ctl",
       "name": "stage_5_statistics_ctl_3",
-      "value": "00000059"
+      "value": "00000019"
     },
     {
       "fully_qualified_name": "mau[5].dp.match_input_xbar_din_power_ctl",
       "name": "stage_5_match_input_xbar_din_power_ctl",
-      "value": "000000000000000000000000000000e000000000000000000000008000000004000000000000000000000003000000100000000000000084000000000000000000000000000000110000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000"
-    },
-    {
-      "fully_qualified_name": "mau[5].dp.xbar_hash.hash.hash_seed",
-      "name": "stage_5_hash_seed",
-      "value": "00000001000000010000000000000004000000050000000500000000000000050000000000000001000000040000000400000001000000050000000100000005000000040000000000000000000000050000000500000004000000050000000000000005000000000000000000000000000000040000000400000001000000010000000100000005000000000000000400000000000000040000000400000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000000000000000000000000000000000000000000000000000000000000600000000500000000000000800000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[5].dp.xbar_hash.hash.parity_group_mask",
       "name": "stage_5_parity_group_mask",
-      "value": "00000001000000000000000a00000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[6].rams.map_alu.stats_wrap[3].stats.statistics_ctl",
+      "name": "stage_6_statistics_ctl_3",
+      "value": "00000019"
     },
     {
       "fully_qualified_name": "mau[6].dp.match_input_xbar_din_power_ctl",
       "name": "stage_6_match_input_xbar_din_power_ctl",
-      "value": "0000000000000000000000000000006000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000000000000000000000400000048000000000000000000000004000000200000000000000007000000000000000000000004000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[7].rams.map_alu.stats_wrap[1].stats.statistics_ctl",
+      "name": "stage_7_statistics_ctl_1",
+      "value": "00000019"
     },
     {
       "fully_qualified_name": "mau[7].rams.map_alu.stats_wrap[2].stats.statistics_ctl",
@@ -184531,27 +174999,27 @@
     {
       "fully_qualified_name": "mau[7].rams.map_alu.stats_wrap[3].stats.statistics_ctl",
       "name": "stage_7_statistics_ctl_3",
-      "value": "00000019"
+      "value": "00000059"
     },
     {
       "fully_qualified_name": "mau[7].dp.match_input_xbar_din_power_ctl",
       "name": "stage_7_match_input_xbar_din_power_ctl",
-      "value": "00000010000000000000000000000000000000b000000002000000240000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000000000000080000000000000024000000b0000000030000000000000000000000800000000100000002000000080000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[7].dp.xbar_hash.hash.hash_seed",
       "name": "stage_7_hash_seed",
-      "value": "00000000000000000000000100000000000000010000000100000001000000010000000000000000000000010000000000000001000000000000000000000000000000000000000100000001000000000000000100000001000000000000000100000000000000010000000100000001000000000000000000000000000000010000000000000001000000000000000000000001000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000001000000010000000000000002000000000000000300000003000000010000000100000003000000000000000100000003000000000000000000000002000000000000000100000003000000030000000100000002000000010000000200000001000000000000000000000000000000030000000100000003000000030000000300000000000000000000000000000001000000020000000300000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[7].dp.xbar_hash.hash.parity_group_mask",
       "name": "stage_7_parity_group_mask",
-      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000001000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[8].dp.match_input_xbar_din_power_ctl",
       "name": "stage_8_match_input_xbar_din_power_ctl",
-      "value": "0000001000000000000000000000000000000010000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000001000000008000000000000000000000000000000020000002400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[8].dp.xbar_hash.hash.parity_group_mask",
@@ -184566,7 +175034,7 @@
     {
       "fully_qualified_name": "mau[9].dp.match_input_xbar_din_power_ctl",
       "name": "stage_9_match_input_xbar_din_power_ctl",
-      "value": "0000004200000000000000000000000000000048000000100000000000000000000000080000009c00000000000000000000000000000030000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000009000000004000000000000000000000048000000180000000000000000000000300000000700000000000000000000000000000000000000000000000000000002000000000000001800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[10].rams.map_alu.stats_wrap[2].stats.statistics_ctl",
@@ -184581,12 +175049,12 @@
     {
       "fully_qualified_name": "mau[10].dp.match_input_xbar_din_power_ctl",
       "name": "stage_10_match_input_xbar_din_power_ctl",
-      "value": "0000002000000000000000000000000000000000000000080000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000000000000000000000000000000000000200000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000004000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[10].dp.xbar_hash.hash.hash_seed",
       "name": "stage_10_hash_seed",
-      "value": "00000002000000020000000000000002000000000000000200000000000000000000000000000000000000020000000200000002000000000000000000000000000000000000000000000002000000020000000200000000000000020000000000000002000000000000000200000002000000000000000200000000000000020000000000000002000000000000000000000000000000000000000200000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000002000000000000000000000002000000020000000000000000000000000000000200000002000000000000000000000002000000020000000200000002000000020000000000000000000000020000000200000000000000020000000200000000000000000000000000000000000000020000000000000000000000020000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[10].dp.xbar_hash.hash.parity_group_mask",
@@ -184611,12 +175079,12 @@
     {
       "fully_qualified_name": "mau[11].dp.match_input_xbar_din_power_ctl",
       "name": "stage_11_match_input_xbar_din_power_ctl",
-      "value": "0000003000000001000000000000000000000000000000100000000000000000000000000000001800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000001000000009000000000000000000000000000000180000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000004000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[11].dp.xbar_hash.hash.hash_seed",
       "name": "stage_11_hash_seed",
-      "value": "00000000000000000000000300000002000000070000000600000007000000070000000600000000000000020000000500000001000000010000000000000004000000070000000300000005000000050000000200000007000000000000000400000004000000050000000200000006000000000000000500000004000000020000000100000005000000020000000500000001000000010000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000002000000020000000500000005000000040000000400000004000000000000000200000003000000030000000500000000000000000000000400000002000000030000000500000000000000020000000300000001000000030000000600000003000000060000000200000007000000070000000600000005000000040000000500000002000000070000000300000005000000000000000500000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[11].dp.xbar_hash.hash.parity_group_mask",
@@ -184634,22 +175102,6 @@
           "slice": { "start_bit": 0, "bit_width": 8 }
         },
         {
-          "name": "^fields_md_spgw_tunnel_src_addr",
-          "slice": { "start_bit": 0, "bit_width": 32 }
-        },
-        {
-          "name": "^fields_md_spgw_tunnel_dst_addr",
-          "slice": { "start_bit": 0, "bit_width": 32 }
-        },
-        {
-          "name": "^fields_md_spgw_ipv4_len",
-          "slice": { "start_bit": 0, "bit_width": 16 }
-        },
-        {
-          "name": "^fields_md_spgw_teid",
-          "slice": { "start_bit": 0, "bit_width": 32 }
-        },
-        {
           "name": "^fields_md_l4_dport",
           "slice": { "start_bit": 0, "bit_width": 16 }
         },
@@ -184670,6 +175122,26 @@
           "slice": { "start_bit": 0, "bit_width": 8 }
         },
         {
+          "name": "^fields_md_spgw_tunnel_src_addr",
+          "slice": { "start_bit": 0, "bit_width": 32 }
+        },
+        {
+          "name": "^fields_md_spgw_tunnel_dst_addr",
+          "slice": { "start_bit": 0, "bit_width": 32 }
+        },
+        {
+          "name": "^fields_md_spgw_tunnel_src_port",
+          "slice": { "start_bit": 0, "bit_width": 16 }
+        },
+        {
+          "name": "^fields_md_spgw_ipv4_len",
+          "slice": { "start_bit": 0, "bit_width": 16 }
+        },
+        {
+          "name": "^fields_md_spgw_teid",
+          "slice": { "start_bit": 0, "bit_width": 32 }
+        },
+        {
           "name": "^fields_md_spgw_ctr_id",
           "slice": { "start_bit": 0, "bit_width": 32 }
         },
@@ -184681,14 +175153,7 @@
           "name": "^fields_md_vlan_cfi",
           "slice": { "start_bit": 0, "bit_width": 1 }
         },
-        {
-          "name": "^fields_md_int_meta_source",
-          "slice": { "start_bit": 0, "bit_width": 1 }
-        },
-        {
-          "name": "^fields_md_spgw_outer_header_creation",
-          "slice": { "start_bit": 0, "bit_width": 1 }
-        },
+        { "name": "__pad_0", "slice": { "start_bit": 0, "bit_width": 2 } },
         {
           "name": "^fields_md_is_multicast",
           "slice": { "start_bit": 0, "bit_width": 1 }
@@ -184697,12 +175162,33 @@
           "name": "^fields_md_is_controller_packet_out",
           "slice": { "start_bit": 0, "bit_width": 1 }
         },
-        { "name": "__pad_0", "slice": { "start_bit": 0, "bit_width": 7 } },
+        { "name": "__pad_1", "slice": { "start_bit": 0, "bit_width": 1 } },
+        {
+          "name": "^fields_md_int_meta_source",
+          "slice": { "start_bit": 0, "bit_width": 1 }
+        },
+        {
+          "name": "^fields_md_spgw_skip_egress_pdr_ctr",
+          "slice": { "start_bit": 0, "bit_width": 1 }
+        },
+        {
+          "name": "^fields_md_spgw_needs_gtpu_encap",
+          "slice": { "start_bit": 0, "bit_width": 1 }
+        },
+        {
+          "name": "^fields_md_fwd_type",
+          "slice": { "start_bit": 0, "bit_width": 3 }
+        },
+        {
+          "name": "^fields_md_spgw_skip_spgw",
+          "slice": { "start_bit": 0, "bit_width": 1 }
+        },
+        { "name": "__pad_2", "slice": { "start_bit": 0, "bit_width": 7 } },
         {
           "name": "^fields_ig_intr_md_ingress_port",
           "slice": { "start_bit": 0, "bit_width": 9 }
         },
-        { "name": "__pad_1", "slice": { "start_bit": 0, "bit_width": 4 } },
+        { "name": "__pad_3", "slice": { "start_bit": 0, "bit_width": 4 } },
         {
           "name": "^fields_md_vlan_id",
           "slice": { "start_bit": 0, "bit_width": 12 }
@@ -184711,7 +175197,7 @@
           "name": "^fields_md_mpls_label",
           "slice": { "start_bit": 0, "bit_width": 20 }
         },
-        { "name": "__pad_2", "slice": { "start_bit": 0, "bit_width": 4 } }
+        { "name": "__pad_4", "slice": { "start_bit": 0, "bit_width": 4 } }
       ]
     },
     {
@@ -184723,6 +175209,6 @@
       ]
     }
   ],
-  "run_id": "667acdfebe0bd09c",
+  "run_id": "d5dd190e7a5cca14",
   "driver_options": { "hash_parity_enabled": false, "high_availability_enabled": true }
 }
\ No newline at end of file
diff --git a/src/main/resources/p4c-out/fabric-spgw-int/tofino/mavericks_sde_9_0_0/pipe/tofino.bin b/src/main/resources/p4c-out/fabric-spgw-int/tofino/mavericks_sde_9_0_0/pipe/tofino.bin
index fe5a7ab..9c19782 100644
--- a/src/main/resources/p4c-out/fabric-spgw-int/tofino/mavericks_sde_9_0_0/pipe/tofino.bin
+++ b/src/main/resources/p4c-out/fabric-spgw-int/tofino/mavericks_sde_9_0_0/pipe/tofino.bin
Binary files differ
diff --git a/src/main/resources/p4c-out/fabric-spgw-int/tofino/montara_sde_9_0_0/p4info.txt b/src/main/resources/p4c-out/fabric-spgw-int/tofino/montara_sde_9_0_0/p4info.txt
index ac74287..1ba6edc 100644
--- a/src/main/resources/p4c-out/fabric-spgw-int/tofino/montara_sde_9_0_0/p4info.txt
+++ b/src/main/resources/p4c-out/fabric-spgw-int/tofino/montara_sde_9_0_0/p4info.txt
@@ -3,179 +3,6 @@
 }
 tables {
   preamble {
-    id: 33586632
-    name: "FabricIngress.spgw_ingress.downlink_filter_table"
-    alias: "downlink_filter_table"
-  }
-  match_fields {
-    id: 1
-    name: "ipv4_prefix"
-    bitwidth: 32
-    match_type: LPM
-  }
-  action_refs {
-    id: 16819938
-  }
-  const_default_action_id: 16819938
-  size: 1024
-}
-tables {
-  preamble {
-    id: 33567046
-    name: "FabricIngress.spgw_ingress.uplink_filter_table"
-    alias: "uplink_filter_table"
-  }
-  match_fields {
-    id: 1
-    name: "gtp_ipv4_dst"
-    bitwidth: 32
-    match_type: EXACT
-  }
-  action_refs {
-    id: 16819938
-  }
-  const_default_action_id: 16819938
-  size: 1024
-}
-tables {
-  preamble {
-    id: 33586958
-    name: "FabricIngress.spgw_ingress.downlink_pdr_lookup"
-    alias: "downlink_pdr_lookup"
-  }
-  match_fields {
-    id: 1
-    name: "ue_addr"
-    bitwidth: 32
-    match_type: EXACT
-  }
-  action_refs {
-    id: 16799934
-  }
-  action_refs {
-    id: 16800567
-    annotations: "@defaultonly"
-    scope: DEFAULT_ONLY
-  }
-  size: 1024
-}
-tables {
-  preamble {
-    id: 33587070
-    name: "FabricIngress.spgw_ingress.uplink_pdr_lookup"
-    alias: "uplink_pdr_lookup"
-  }
-  match_fields {
-    id: 1
-    name: "tunnel_ipv4_dst"
-    bitwidth: 32
-    match_type: EXACT
-  }
-  match_fields {
-    id: 2
-    name: "teid"
-    bitwidth: 32
-    match_type: EXACT
-  }
-  match_fields {
-    id: 3
-    name: "ue_addr"
-    bitwidth: 32
-    match_type: EXACT
-  }
-  action_refs {
-    id: 16799934
-  }
-  action_refs {
-    id: 16800567
-    annotations: "@defaultonly"
-    scope: DEFAULT_ONLY
-  }
-  size: 1024
-}
-tables {
-  preamble {
-    id: 33582573
-    name: "FabricIngress.spgw_ingress.flexible_pdr_lookup"
-    alias: "flexible_pdr_lookup"
-  }
-  match_fields {
-    id: 1
-    name: "spgw_direction"
-    bitwidth: 2
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 2
-    name: "tunnel_ipv4_dst"
-    bitwidth: 32
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 3
-    name: "teid"
-    bitwidth: 32
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 4
-    name: "ipv4_src"
-    bitwidth: 32
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 5
-    name: "ipv4_dst"
-    bitwidth: 32
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 6
-    name: "ip_proto"
-    bitwidth: 8
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 7
-    name: "l4_sport"
-    bitwidth: 16
-    match_type: TERNARY
-  }
-  match_fields {
-    id: 8
-    name: "l4_dport"
-    bitwidth: 16
-    match_type: TERNARY
-  }
-  action_refs {
-    id: 16799934
-  }
-  const_default_action_id: 16799934
-  size: 1024
-}
-tables {
-  preamble {
-    id: 33613200
-    name: "FabricIngress.spgw_ingress.far_lookup"
-    alias: "far_lookup"
-  }
-  match_fields {
-    id: 1
-    name: "far_id"
-    bitwidth: 32
-    match_type: EXACT
-  }
-  action_refs {
-    id: 16834935
-  }
-  action_refs {
-    id: 16787606
-  }
-  const_default_action_id: 16834935
-  size: 1024
-}
-tables {
-  preamble {
     id: 33581620
     name: "FabricIngress.process_set_source_sink.tb_set_source"
     alias: "tb_set_source"
@@ -563,6 +390,109 @@
 }
 tables {
   preamble {
+    id: 33557250
+    name: "FabricIngress.spgw.interfaces"
+    alias: "interfaces"
+  }
+  match_fields {
+    id: 1
+    name: "ipv4_dst_addr"
+    bitwidth: 32
+    match_type: LPM
+  }
+  match_fields {
+    id: 2
+    name: "gtpu_is_valid"
+    bitwidth: 1
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16810012
+  }
+  action_refs {
+    id: 16783042
+    annotations: "@defaultonly"
+    scope: DEFAULT_ONLY
+  }
+  const_default_action_id: 16783042
+  size: 128
+}
+tables {
+  preamble {
+    id: 33566601
+    name: "FabricIngress.spgw.downlink_pdrs"
+    alias: "downlink_pdrs"
+  }
+  match_fields {
+    id: 1
+    name: "ue_addr"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16800614
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly"
+    scope: DEFAULT_ONLY
+  }
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33606410
+    name: "FabricIngress.spgw.uplink_pdrs"
+    alias: "uplink_pdrs"
+  }
+  match_fields {
+    id: 1
+    name: "tunnel_ipv4_dst"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  match_fields {
+    id: 2
+    name: "teid"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16800614
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly"
+    scope: DEFAULT_ONLY
+  }
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33599560
+    name: "FabricIngress.spgw.fars"
+    alias: "fars"
+  }
+  match_fields {
+    id: 1
+    name: "far_id"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16820307
+  }
+  action_refs {
+    id: 16814785
+  }
+  action_refs {
+    id: 16814681
+  }
+  const_default_action_id: 16820307
+  size: 2048
+}
+tables {
+  preamble {
     id: 33612258
     name: "FabricEgress.process_int_main.process_int_source.tb_int_source"
     alias: "tb_int_source"
@@ -645,14 +575,17 @@
     match_type: EXACT
   }
   action_refs {
+    id: 16807339
+  }
+  action_refs {
     id: 16790030
   }
   action_refs {
-    id: 16819938
+    id: 16787838
     annotations: "@defaultonly"
     scope: DEFAULT_ONLY
   }
-  const_default_action_id: 16819938
+  const_default_action_id: 16787838
   direct_resource_ids: 318827144
   size: 2048
 }
@@ -672,72 +605,6 @@
 }
 actions {
   preamble {
-    id: 16799934
-    name: "FabricIngress.spgw_ingress.set_pdr_attributes"
-    alias: "set_pdr_attributes"
-  }
-  params {
-    id: 1
-    name: "ctr_id"
-    bitwidth: 32
-  }
-  params {
-    id: 2
-    name: "far_id"
-    bitwidth: 32
-  }
-}
-actions {
-  preamble {
-    id: 16834935
-    name: "FabricIngress.spgw_ingress.load_normal_far_attributes"
-    alias: "load_normal_far_attributes"
-  }
-  params {
-    id: 1
-    name: "drop"
-    bitwidth: 1
-  }
-  params {
-    id: 2
-    name: "notify_cp"
-    bitwidth: 1
-  }
-}
-actions {
-  preamble {
-    id: 16787606
-    name: "FabricIngress.spgw_ingress.load_tunnel_far_attributes"
-    alias: "load_tunnel_far_attributes"
-  }
-  params {
-    id: 1
-    name: "drop"
-    bitwidth: 1
-  }
-  params {
-    id: 2
-    name: "notify_cp"
-    bitwidth: 1
-  }
-  params {
-    id: 3
-    name: "tunnel_src_addr"
-    bitwidth: 32
-  }
-  params {
-    id: 4
-    name: "tunnel_dst_addr"
-    bitwidth: 32
-  }
-  params {
-    id: 5
-    name: "teid"
-    bitwidth: 32
-  }
-}
-actions {
-  preamble {
     id: 16778827
     name: "FabricIngress.process_set_source_sink.int_set_source"
     alias: "int_set_source"
@@ -859,7 +726,7 @@
   preamble {
     id: 16820765
     name: "FabricIngress.acl.drop"
-    alias: "drop"
+    alias: "acl.drop"
   }
 }
 actions {
@@ -980,6 +847,138 @@
 }
 actions {
   preamble {
+    id: 16810012
+    name: "FabricIngress.spgw.load_iface"
+    alias: "load_iface"
+  }
+  params {
+    id: 1
+    name: "src_iface"
+    bitwidth: 8
+  }
+}
+actions {
+  preamble {
+    id: 16783042
+    name: "FabricIngress.spgw.iface_miss"
+    alias: "iface_miss"
+  }
+}
+actions {
+  preamble {
+    id: 16800614
+    name: "FabricIngress.spgw.load_pdr"
+    alias: "load_pdr"
+  }
+  params {
+    id: 1
+    name: "ctr_id"
+    bitwidth: 32
+  }
+  params {
+    id: 2
+    name: "far_id"
+    bitwidth: 32
+  }
+  params {
+    id: 3
+    name: "needs_gtpu_decap"
+    bitwidth: 1
+  }
+}
+actions {
+  preamble {
+    id: 16820307
+    name: "FabricIngress.spgw.load_normal_far"
+    alias: "load_normal_far"
+  }
+  params {
+    id: 1
+    name: "drop"
+    bitwidth: 1
+  }
+  params {
+    id: 2
+    name: "notify_cp"
+    bitwidth: 1
+  }
+}
+actions {
+  preamble {
+    id: 16814785
+    name: "FabricIngress.spgw.load_tunnel_far"
+    alias: "load_tunnel_far"
+  }
+  params {
+    id: 1
+    name: "drop"
+    bitwidth: 1
+  }
+  params {
+    id: 2
+    name: "notify_cp"
+    bitwidth: 1
+  }
+  params {
+    id: 3
+    name: "tunnel_src_port"
+    bitwidth: 16
+  }
+  params {
+    id: 4
+    name: "tunnel_src_addr"
+    bitwidth: 32
+  }
+  params {
+    id: 5
+    name: "tunnel_dst_addr"
+    bitwidth: 32
+  }
+  params {
+    id: 6
+    name: "teid"
+    bitwidth: 32
+  }
+}
+actions {
+  preamble {
+    id: 16814681
+    name: "FabricIngress.spgw.load_dbuf_far"
+    alias: "load_dbuf_far"
+  }
+  params {
+    id: 1
+    name: "drop"
+    bitwidth: 1
+  }
+  params {
+    id: 2
+    name: "notify_cp"
+    bitwidth: 1
+  }
+  params {
+    id: 3
+    name: "tunnel_src_port"
+    bitwidth: 16
+  }
+  params {
+    id: 4
+    name: "tunnel_src_addr"
+    bitwidth: 32
+  }
+  params {
+    id: 5
+    name: "tunnel_dst_addr"
+    bitwidth: 32
+  }
+  params {
+    id: 6
+    name: "teid"
+    bitwidth: 32
+  }
+}
+actions {
+  preamble {
     id: 16785857
     name: "FabricEgress.process_int_main.process_int_source.int_source_dscp"
     alias: "int_source_dscp"
@@ -1019,11 +1018,25 @@
 }
 actions {
   preamble {
+    id: 16807339
+    name: "FabricEgress.egress_next.push_vlan"
+    alias: "push_vlan"
+  }
+}
+actions {
+  preamble {
     id: 16790030
     name: "FabricEgress.egress_next.pop_vlan"
     alias: "pop_vlan"
   }
 }
+actions {
+  preamble {
+    id: 16787838
+    name: "FabricEgress.egress_next.drop"
+    alias: "egress_next.drop"
+  }
+}
 action_profiles {
   preamble {
     id: 285217164
@@ -1037,25 +1050,25 @@
 }
 counters {
   preamble {
-    id: 302029884
-    name: "FabricIngress.spgw_ingress.pdr_counter"
-    alias: "spgw_ingress.pdr_counter"
+    id: 302043952
+    name: "FabricIngress.spgw.pdr_counter"
+    alias: "FabricIngress.spgw.pdr_counter"
   }
   spec {
     unit: BOTH
   }
-  size: 1024
+  size: 2048
 }
 counters {
   preamble {
-    id: 302012289
-    name: "FabricEgress.spgw_egress.pdr_counter"
-    alias: "spgw_egress.pdr_counter"
+    id: 302049491
+    name: "FabricEgress.spgw.pdr_counter"
+    alias: "FabricEgress.spgw.pdr_counter"
   }
   spec {
     unit: BOTH
   }
-  size: 1024
+  size: 2048
 }
 direct_counters {
   preamble {
diff --git a/src/main/resources/p4c-out/fabric-spgw-int/tofino/montara_sde_9_0_0/pipe/context.json b/src/main/resources/p4c-out/fabric-spgw-int/tofino/montara_sde_9_0_0/pipe/context.json
index 594b1ed..4552554 100644
--- a/src/main/resources/p4c-out/fabric-spgw-int/tofino/montara_sde_9_0_0/pipe/context.json
+++ b/src/main/resources/p4c-out/fabric-spgw-int/tofino/montara_sde_9_0_0/pipe/context.json
@@ -1,5 +1,5 @@
 {
-  "build_date": "Thu Jul 16 03:01:06 2020",
+  "build_date": "Wed Jan  6 08:41:48 2021",
   "schema_version": "1.8.4",
   "compiler_version": "9.0.0",
   "target": "tofino",
@@ -232,58 +232,51 @@
         "parser_state_id": 17
       },
       {
-        "parser_name": "parse_gtpu",
+        "parser_name": "parse_gtpu.$split_0",
         "match_registers": [],
         "tcam_rows": [ 223 ],
         "uses_pvs": false,
-        "parser_state_id": 17
+        "parser_state_id": 18
       },
       {
-        "parser_name": "do_parse_gtpu",
+        "parser_name": "parse_gtpu.$split_0",
         "match_registers": [],
         "tcam_rows": [ 222 ],
         "uses_pvs": false,
         "parser_state_id": 18
       },
       {
-        "parser_name": "do_parse_gtpu.$split_0",
+        "parser_name": "parse_gtpu.$split_0",
         "match_registers": [],
         "tcam_rows": [ 221 ],
         "uses_pvs": false,
-        "parser_state_id": 19
+        "parser_state_id": 18
       },
       {
-        "parser_name": "do_parse_gtpu.$split_0",
+        "parser_name": "parse_gtpu.$split_0",
         "match_registers": [],
         "tcam_rows": [ 220 ],
         "uses_pvs": false,
-        "parser_state_id": 19
+        "parser_state_id": 18
       },
       {
-        "parser_name": "do_parse_gtpu.$split_0",
+        "parser_name": "parse_inner_udp",
         "match_registers": [],
         "tcam_rows": [ 219 ],
         "uses_pvs": false,
         "parser_state_id": 19
       },
       {
-        "parser_name": "do_parse_gtpu.$split_0",
+        "parser_name": "parse_icmp",
         "match_registers": [],
         "tcam_rows": [ 218 ],
         "uses_pvs": false,
-        "parser_state_id": 19
-      },
-      {
-        "parser_name": "parse_inner_udp",
-        "match_registers": [],
-        "tcam_rows": [ 217 ],
-        "uses_pvs": false,
         "parser_state_id": 20
       },
       {
-        "parser_name": "parse_icmp",
+        "parser_name": "parse_icmp.$split_0",
         "match_registers": [],
-        "tcam_rows": [ 216 ],
+        "tcam_rows": [ 217 ],
         "uses_pvs": false,
         "parser_state_id": 21
       }
@@ -332,7 +325,7 @@
         "parser_state_id": 4
       },
       {
-        "parser_name": "start",
+        "parser_name": "$bridged_metadata.$split_2",
         "match_registers": [],
         "tcam_rows": [ 249 ],
         "uses_pvs": false,
@@ -343,17 +336,17 @@
         "match_registers": [],
         "tcam_rows": [ 248 ],
         "uses_pvs": false,
-        "parser_state_id": 5
+        "parser_state_id": 6
       },
       {
-        "parser_name": "parse_packet_out",
+        "parser_name": "start",
         "match_registers": [],
         "tcam_rows": [ 247 ],
         "uses_pvs": false,
         "parser_state_id": 6
       },
       {
-        "parser_name": "parse_ethernet",
+        "parser_name": "parse_packet_out",
         "match_registers": [],
         "tcam_rows": [ 246 ],
         "uses_pvs": false,
@@ -364,24 +357,24 @@
         "match_registers": [],
         "tcam_rows": [ 245 ],
         "uses_pvs": false,
-        "parser_state_id": 7
+        "parser_state_id": 8
       },
       {
         "parser_name": "parse_ethernet",
         "match_registers": [],
         "tcam_rows": [ 244 ],
         "uses_pvs": false,
-        "parser_state_id": 7
+        "parser_state_id": 8
       },
       {
         "parser_name": "parse_ethernet",
         "match_registers": [],
         "tcam_rows": [ 243 ],
         "uses_pvs": false,
-        "parser_state_id": 7
+        "parser_state_id": 8
       },
       {
-        "parser_name": "parse_vlan_tag",
+        "parser_name": "parse_ethernet",
         "match_registers": [],
         "tcam_rows": [ 242 ],
         "uses_pvs": false,
@@ -392,17 +385,17 @@
         "match_registers": [],
         "tcam_rows": [ 241 ],
         "uses_pvs": false,
-        "parser_state_id": 8
+        "parser_state_id": 9
       },
       {
-        "parser_name": "parse_inner_vlan_tag",
+        "parser_name": "parse_vlan_tag",
         "match_registers": [],
         "tcam_rows": [ 240 ],
         "uses_pvs": false,
         "parser_state_id": 9
       },
       {
-        "parser_name": "parse_eth_type",
+        "parser_name": "parse_inner_vlan_tag",
         "match_registers": [],
         "tcam_rows": [ 239 ],
         "uses_pvs": false,
@@ -413,17 +406,17 @@
         "match_registers": [],
         "tcam_rows": [ 238 ],
         "uses_pvs": false,
-        "parser_state_id": 10
+        "parser_state_id": 11
       },
       {
         "parser_name": "parse_eth_type",
         "match_registers": [],
         "tcam_rows": [ 237 ],
         "uses_pvs": false,
-        "parser_state_id": 10
+        "parser_state_id": 11
       },
       {
-        "parser_name": "parse_mpls",
+        "parser_name": "parse_eth_type",
         "match_registers": [],
         "tcam_rows": [ 236 ],
         "uses_pvs": false,
@@ -434,17 +427,17 @@
         "match_registers": [],
         "tcam_rows": [ 235 ],
         "uses_pvs": false,
-        "parser_state_id": 11
+        "parser_state_id": 12
       },
       {
-        "parser_name": "parse_ipv4",
+        "parser_name": "parse_mpls",
         "match_registers": [],
         "tcam_rows": [ 234 ],
         "uses_pvs": false,
         "parser_state_id": 12
       },
       {
-        "parser_name": "parse_ipv4.$split_0",
+        "parser_name": "parse_ipv4",
         "match_registers": [],
         "tcam_rows": [ 233 ],
         "uses_pvs": false,
@@ -455,161 +448,175 @@
         "match_registers": [],
         "tcam_rows": [ 232 ],
         "uses_pvs": false,
-        "parser_state_id": 13
+        "parser_state_id": 14
       },
       {
         "parser_name": "parse_ipv4.$split_0",
         "match_registers": [],
         "tcam_rows": [ 231 ],
         "uses_pvs": false,
-        "parser_state_id": 13
+        "parser_state_id": 14
       },
       {
         "parser_name": "parse_ipv4.$split_0",
         "match_registers": [],
         "tcam_rows": [ 230 ],
         "uses_pvs": false,
-        "parser_state_id": 13
+        "parser_state_id": 14
       },
       {
-        "parser_name": "parse_tcp",
+        "parser_name": "parse_ipv4.$split_0",
         "match_registers": [],
         "tcam_rows": [ 229 ],
         "uses_pvs": false,
         "parser_state_id": 14
       },
       {
-        "parser_name": "parse_int",
+        "parser_name": "parse_tcp",
         "match_registers": [],
         "tcam_rows": [ 228 ],
         "uses_pvs": false,
         "parser_state_id": 15
       },
       {
-        "parser_name": "parse_int",
+        "parser_name": "parse_tcp.$split_0",
         "match_registers": [],
         "tcam_rows": [ 227 ],
         "uses_pvs": false,
-        "parser_state_id": 15
-      },
-      {
-        "parser_name": "parse_intl4_shim",
-        "match_registers": [],
-        "tcam_rows": [ 226 ],
-        "uses_pvs": false,
         "parser_state_id": 16
       },
       {
-        "parser_name": "parse_intl4_shim.$split_0",
+        "parser_name": "parse_int",
+        "match_registers": [],
+        "tcam_rows": [ 226 ],
+        "uses_pvs": false,
+        "parser_state_id": 17
+      },
+      {
+        "parser_name": "parse_int",
         "match_registers": [],
         "tcam_rows": [ 225 ],
         "uses_pvs": false,
         "parser_state_id": 17
       },
       {
-        "parser_name": "parse_intl4_shim.$split_0",
+        "parser_name": "parse_intl4_shim",
         "match_registers": [],
         "tcam_rows": [ 224 ],
         "uses_pvs": false,
-        "parser_state_id": 17
-      },
-      {
-        "parser_name": "parse_intl4_tail",
-        "match_registers": [],
-        "tcam_rows": [ 223 ],
-        "uses_pvs": false,
         "parser_state_id": 18
       },
       {
-        "parser_name": "parse_int_data",
+        "parser_name": "parse_intl4_shim.$split_0",
+        "match_registers": [],
+        "tcam_rows": [ 223 ],
+        "uses_pvs": false,
+        "parser_state_id": 19
+      },
+      {
+        "parser_name": "parse_intl4_shim.$split_0",
         "match_registers": [],
         "tcam_rows": [ 222 ],
         "uses_pvs": false,
         "parser_state_id": 19
       },
       {
-        "parser_name": "parse_udp",
+        "parser_name": "parse_intl4_tail",
         "match_registers": [],
         "tcam_rows": [ 221 ],
         "uses_pvs": false,
         "parser_state_id": 20
       },
       {
-        "parser_name": "parse_udp",
+        "parser_name": "parse_int_data",
         "match_registers": [],
         "tcam_rows": [ 220 ],
         "uses_pvs": false,
-        "parser_state_id": 20
+        "parser_state_id": 21
       },
       {
-        "parser_name": "parse_gtpu",
+        "parser_name": "parse_udp",
         "match_registers": [],
         "tcam_rows": [ 219 ],
         "uses_pvs": false,
-        "parser_state_id": 21
+        "parser_state_id": 22
+      },
+      {
+        "parser_name": "parse_udp",
+        "match_registers": [],
+        "tcam_rows": [ 218 ],
+        "uses_pvs": false,
+        "parser_state_id": 22
       },
       {
         "parser_name": "parse_gtpu",
         "match_registers": [],
-        "tcam_rows": [ 218 ],
-        "uses_pvs": false,
-        "parser_state_id": 21
-      },
-      {
-        "parser_name": "do_parse_gtpu",
-        "match_registers": [],
         "tcam_rows": [ 217 ],
         "uses_pvs": false,
-        "parser_state_id": 22
-      },
-      {
-        "parser_name": "do_parse_gtpu",
-        "match_registers": [],
-        "tcam_rows": [ 216 ],
-        "uses_pvs": false,
-        "parser_state_id": 22
-      },
-      {
-        "parser_name": "do_parse_gtpu",
-        "match_registers": [],
-        "tcam_rows": [ 215 ],
-        "uses_pvs": false,
-        "parser_state_id": 22
-      },
-      {
-        "parser_name": "do_parse_gtpu",
-        "match_registers": [],
-        "tcam_rows": [ 214 ],
-        "uses_pvs": false,
-        "parser_state_id": 22
-      },
-      {
-        "parser_name": "parse_inner_udp",
-        "match_registers": [],
-        "tcam_rows": [ 213 ],
-        "uses_pvs": false,
         "parser_state_id": 23
       },
       {
-        "parser_name": "parse_icmp",
+        "parser_name": "parse_gtpu.$split_0",
         "match_registers": [],
-        "tcam_rows": [ 212 ],
+        "tcam_rows": [ 216 ],
         "uses_pvs": false,
         "parser_state_id": 24
       },
       {
-        "parser_name": "$mirrored",
+        "parser_name": "parse_gtpu.$split_0",
         "match_registers": [],
-        "tcam_rows": [ 211 ],
+        "tcam_rows": [ 215 ],
+        "uses_pvs": false,
+        "parser_state_id": 24
+      },
+      {
+        "parser_name": "parse_gtpu.$split_0",
+        "match_registers": [],
+        "tcam_rows": [ 214 ],
+        "uses_pvs": false,
+        "parser_state_id": 24
+      },
+      {
+        "parser_name": "parse_gtpu.$split_0",
+        "match_registers": [],
+        "tcam_rows": [ 213 ],
+        "uses_pvs": false,
+        "parser_state_id": 24
+      },
+      {
+        "parser_name": "parse_inner_udp",
+        "match_registers": [],
+        "tcam_rows": [ 212 ],
         "uses_pvs": false,
         "parser_state_id": 25
       },
       {
-        "parser_name": "$mirror_field_list_ingress_1",
+        "parser_name": "parse_icmp",
+        "match_registers": [],
+        "tcam_rows": [ 211 ],
+        "uses_pvs": false,
+        "parser_state_id": 26
+      },
+      {
+        "parser_name": "parse_icmp.$split_0",
         "match_registers": [],
         "tcam_rows": [ 210 ],
         "uses_pvs": false,
-        "parser_state_id": 26
+        "parser_state_id": 27
+      },
+      {
+        "parser_name": "$mirrored",
+        "match_registers": [],
+        "tcam_rows": [ 209 ],
+        "uses_pvs": false,
+        "parser_state_id": 28
+      },
+      {
+        "parser_name": "$mirror_field_list_ingress_1",
+        "match_registers": [],
+        "tcam_rows": [ 208 ],
+        "uses_pvs": false,
+        "parser_state_id": 29
       }
     ]
   },
@@ -621,29 +628,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -656,15 +705,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -677,15 +740,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -698,15 +817,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -719,18 +866,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -740,29 +901,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -775,8 +950,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -796,11 +971,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -817,7 +992,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -838,43 +1013,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -887,43 +1034,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -936,43 +1055,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -985,40 +1076,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -1034,36 +1143,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -1083,43 +1220,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -1132,15 +1269,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -1153,26 +1318,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -1188,7 +1361,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -1202,7 +1702,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -1219,46 +1719,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -1272,7 +1737,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -1289,51 +1754,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -1342,12 +1770,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -1359,12 +1785,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -1380,11 +1952,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -1401,11 +2015,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -1422,11 +2036,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -1443,11 +2057,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -1464,30 +2078,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -1503,7 +2568,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -1524,15 +2589,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -1559,7 +2624,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -1571,28 +2650,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -1602,7 +2659,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -1616,7 +2673,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -1630,7 +2687,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -1651,97 +2708,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -1756,7 +2722,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -1773,11 +2739,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -1798,7 +2869,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -1821,19 +2892,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -1841,42 +2912,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -1887,34 +2972,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -1924,7 +2981,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -1952,15 +3009,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -1973,7 +3030,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -1994,62 +3051,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -2059,14 +3072,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -2080,18 +3093,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -2101,18 +3165,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -2132,89 +3259,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -2225,20 +3275,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -2248,237 +3284,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -2493,7 +3298,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -2510,53 +3315,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -2573,11 +3336,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -2594,11 +3357,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -2615,11 +3378,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -2636,11 +3399,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -2657,397 +3420,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -3055,13 +3438,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -3069,13 +3452,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -3083,13 +3466,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -3097,13 +3480,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -3111,13 +3494,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -3125,13 +3508,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -3139,64 +3522,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -3206,7 +3543,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -3220,7 +3557,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -3234,7 +3571,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -3248,7 +3585,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -3262,7 +3599,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -3276,7 +3613,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -3290,7 +3627,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -3304,7 +3641,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -3325,13 +3662,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -3339,80 +3676,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -3422,168 +3739,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -3596,71 +3753,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -3694,7 +3823,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -3715,77 +3886,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -3799,7 +3900,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -3813,7 +3914,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -3827,7 +3928,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -3844,81 +3945,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -3932,7 +4019,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -3949,61 +4036,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -4023,7 +4131,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -4039,11 +4147,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -4060,11 +4168,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -4081,12 +4189,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -4102,12 +4210,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -4123,12 +4231,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -4144,11 +4252,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -4165,84 +4273,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -4259,11 +4290,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -4280,15 +4311,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -4301,7 +4332,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -4320,7 +4351,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -4331,7 +4362,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -4342,8 +4373,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -4353,7 +4384,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -4364,8 +4395,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -4386,8 +4417,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -4408,8 +4439,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -4430,8 +4461,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -4452,8 +4483,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -4474,8 +4505,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -4496,8 +4527,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -4518,7 +4549,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -4533,15 +4740,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -4551,18 +4758,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -4573,18 +4780,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -4595,18 +4802,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -4617,18 +4824,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -4639,18 +4846,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -4661,18 +4868,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -4683,18 +4890,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -4705,18 +4912,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -4726,84 +4933,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -4816,7 +5077,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -4828,7 +5089,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -4840,7 +5101,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -4852,7 +5113,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4864,7 +5125,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -4876,7 +5137,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4888,7 +5149,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -4900,7 +5161,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4912,7 +5173,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -4924,7 +5185,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4936,7 +5197,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4948,7 +5209,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4960,7 +5221,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -4972,7 +5233,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -4984,7 +5245,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -4996,7 +5257,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -5008,7 +5269,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -5020,7 +5281,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -5039,12 +5300,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -5060,7 +5321,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5081,7 +5342,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5102,12 +5363,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -5123,7 +5384,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5144,7 +5405,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5165,16 +5426,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -5193,84 +5454,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -5280,7 +5475,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -5294,7 +5489,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -5315,7 +5510,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -5329,7 +5524,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -5350,12 +5545,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -5371,7 +5566,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -5385,7 +5580,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -5399,7 +5594,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -5420,7 +5615,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5441,7 +5636,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5467,7 +5662,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -5483,11 +5678,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -5504,7 +5699,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -5518,7 +5713,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -5539,7 +5734,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5560,7 +5755,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -5577,79 +5772,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -5686,7 +5818,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -5700,10 +5846,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -5719,11 +5867,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -5740,11 +5888,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -5761,7 +5909,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -5782,7 +5930,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -5803,7 +5951,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -5824,12 +5972,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -5845,7 +5993,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -5857,6 +6005,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -5866,28 +6026,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -5904,16 +6043,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -5925,46 +6064,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -5978,7 +6131,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -5992,7 +6145,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -6009,11 +6162,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -6030,11 +6183,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -6048,7 +6201,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -6062,7 +6215,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -6076,7 +6229,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -6093,15 +6246,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -6118,7 +6292,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -6139,7 +6313,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -6160,7 +6334,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -6181,11 +6355,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6195,11 +6369,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6209,11 +6383,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6223,11 +6397,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6237,11 +6411,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6251,11 +6425,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6265,11 +6439,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -6286,7 +6460,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -6300,7 +6474,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -6314,7 +6488,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -6328,7 +6502,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -6342,7 +6516,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -6356,7 +6530,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -6377,7 +6551,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -6391,7 +6565,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -6417,7 +6591,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -6433,12 +6607,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -6454,12 +6628,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -6475,12 +6649,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -6492,11 +6666,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -6513,154 +6687,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -6668,19 +6789,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -6695,7 +6810,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -6709,7 +7120,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -6723,7 +7134,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -6737,7 +7148,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -6754,17 +7165,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -6772,29 +7188,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -6803,17 +7286,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -6821,13 +7304,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -6835,13 +7318,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -6849,13 +7353,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -6866,63 +7370,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -6939,11 +7422,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -6957,10 +7440,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -6974,11 +7457,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -6992,7 +7538,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -7013,7 +7559,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -7034,24 +7580,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -7065,24 +7601,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -7092,11 +7618,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -7113,11 +7681,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -7134,78 +7744,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -7215,29 +7769,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7250,8 +7804,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -7271,15 +7825,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7292,8 +7860,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -7313,8 +7881,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -7325,8 +7990,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -7340,12 +8005,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -7365,8 +8113,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -7386,7 +8134,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -7403,11 +8193,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -7424,28 +8214,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -7454,7 +8223,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -7475,29 +8244,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7510,15 +8321,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7531,15 +8356,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7552,15 +8433,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7573,18 +8482,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -7594,29 +8517,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7629,8 +8566,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -7650,11 +8587,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -7671,7 +8608,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -7692,43 +8629,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7741,43 +8650,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7790,43 +8671,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7839,40 +8692,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -7888,36 +8759,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -7937,43 +8836,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -7986,15 +8885,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -8007,26 +8934,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -8042,7 +8977,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -8056,7 +9318,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -8073,46 +9335,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -8126,7 +9353,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -8143,51 +9370,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -8196,12 +9386,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -8213,12 +9401,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -8234,11 +9568,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -8255,11 +9631,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -8276,11 +9652,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -8297,11 +9673,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -8318,30 +9694,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -8357,7 +10184,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -8378,15 +10205,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -8413,7 +10240,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -8425,28 +10266,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -8456,7 +10275,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -8470,7 +10289,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -8484,7 +10303,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -8505,97 +10324,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -8610,7 +10338,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -8627,11 +10355,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -8652,7 +10485,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -8675,19 +10508,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -8695,42 +10528,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -8741,34 +10588,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -8778,7 +10597,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -8806,15 +10625,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -8827,7 +10646,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -8848,62 +10667,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -8913,14 +10688,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -8934,18 +10709,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -8955,18 +10781,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -8986,89 +10875,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -9079,20 +10891,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -9102,237 +10900,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -9347,7 +10914,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -9364,53 +10931,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -9427,11 +10952,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -9448,11 +10973,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -9469,11 +10994,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -9490,11 +11015,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -9511,397 +11036,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -9909,13 +11054,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -9923,13 +11068,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -9937,13 +11082,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -9951,13 +11096,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -9965,13 +11110,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -9979,13 +11124,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -9993,64 +11138,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -10060,7 +11159,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -10074,7 +11173,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -10088,7 +11187,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -10102,7 +11201,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -10116,7 +11215,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -10130,7 +11229,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -10144,7 +11243,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -10158,7 +11257,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -10179,13 +11278,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -10193,80 +11292,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -10276,168 +11355,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -10450,71 +11369,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -10548,7 +11439,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -10569,77 +11502,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -10653,7 +11516,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -10667,7 +11530,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -10681,7 +11544,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -10698,81 +11561,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -10786,7 +11635,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -10803,61 +11652,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -10877,7 +11747,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -10893,11 +11763,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -10914,11 +11784,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -10935,12 +11805,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -10956,12 +11826,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -10977,12 +11847,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -10998,11 +11868,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -11019,84 +11889,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -11113,11 +11906,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -11134,15 +11927,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -11155,7 +11948,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -11174,7 +11967,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -11185,7 +11978,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -11196,8 +11989,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -11207,7 +12000,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -11218,8 +12011,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -11240,8 +12033,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -11262,8 +12055,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -11284,8 +12077,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -11306,8 +12099,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -11328,8 +12121,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -11350,8 +12143,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -11372,7 +12165,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -11387,15 +12356,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -11405,18 +12374,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -11427,18 +12396,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -11449,18 +12418,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -11471,18 +12440,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -11493,18 +12462,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -11515,18 +12484,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -11537,18 +12506,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -11559,18 +12528,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -11580,84 +12549,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -11670,7 +12693,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -11682,7 +12705,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -11694,7 +12717,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -11706,7 +12729,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11718,7 +12741,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -11730,7 +12753,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11742,7 +12765,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -11754,7 +12777,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11766,7 +12789,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -11778,7 +12801,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11790,7 +12813,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11802,7 +12825,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11814,7 +12837,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -11826,7 +12849,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -11838,7 +12861,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11850,7 +12873,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -11862,7 +12885,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -11874,7 +12897,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -11893,12 +12916,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -11914,7 +12937,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11935,7 +12958,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11956,12 +12979,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -11977,7 +13000,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -11998,7 +13021,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -12019,16 +13042,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -12047,84 +13070,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -12134,7 +13091,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -12148,7 +13105,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -12169,7 +13126,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -12183,7 +13140,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -12204,12 +13161,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -12225,7 +13182,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12239,7 +13196,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -12253,7 +13210,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -12274,7 +13231,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -12295,7 +13252,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -12321,7 +13278,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -12337,11 +13294,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -12358,7 +13315,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12372,7 +13329,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12393,7 +13350,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -12414,7 +13371,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -12431,79 +13388,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -12540,7 +13434,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -12554,10 +13462,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -12573,11 +13483,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -12594,11 +13504,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -12615,7 +13525,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12636,7 +13546,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12657,7 +13567,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12678,12 +13588,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -12699,7 +13609,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12711,6 +13621,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -12720,28 +13642,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12758,16 +13659,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -12779,46 +13680,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -12832,7 +13747,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -12846,7 +13761,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -12863,11 +13778,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12884,11 +13799,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12902,7 +13817,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12916,7 +13831,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12930,7 +13845,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -12947,15 +13862,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -12972,7 +13908,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -12993,7 +13929,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -13014,7 +13950,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -13035,11 +13971,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13049,11 +13985,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13063,11 +13999,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13077,11 +14013,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13091,11 +14027,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13105,11 +14041,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13119,11 +14055,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -13140,7 +14076,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -13154,7 +14090,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -13168,7 +14104,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -13182,7 +14118,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -13196,7 +14132,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -13210,7 +14146,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -13231,7 +14167,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -13245,7 +14181,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -13271,7 +14207,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -13287,12 +14223,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -13308,12 +14244,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -13329,12 +14265,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -13346,11 +14282,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -13367,154 +14303,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -13522,19 +14405,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -13549,7 +14426,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -13563,7 +14736,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -13577,7 +14750,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -13591,7 +14764,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -13608,17 +14781,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -13626,29 +14804,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -13657,17 +14902,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -13675,13 +14920,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -13689,13 +14934,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -13703,13 +14969,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -13720,63 +14986,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -13793,11 +15038,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -13811,10 +15056,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -13828,11 +15073,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -13846,7 +15154,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -13867,7 +15175,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -13888,24 +15196,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -13919,24 +15217,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -13946,11 +15234,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -13967,11 +15297,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -13988,78 +15360,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -14069,29 +15385,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14104,8 +15420,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -14125,15 +15441,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14146,8 +15476,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -14167,8 +15497,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -14179,8 +15606,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -14194,12 +15621,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -14219,8 +15729,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -14240,7 +15750,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -14257,11 +15809,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -14278,28 +15830,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -14308,7 +15839,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -14329,29 +15860,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14364,15 +15937,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14385,15 +15972,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14406,15 +16049,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14427,18 +16098,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -14448,29 +16133,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14483,8 +16182,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -14504,11 +16203,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -14525,7 +16224,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -14546,43 +16245,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14595,43 +16266,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14644,43 +16287,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14693,40 +16308,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -14742,36 +16375,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -14791,43 +16452,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14840,15 +16501,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -14861,26 +16550,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -14896,7 +16593,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -14910,7 +16934,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -14927,46 +16951,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -14980,7 +16969,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -14997,51 +16986,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -15050,12 +17002,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -15067,12 +17017,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -15088,11 +17184,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -15109,11 +17247,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -15130,11 +17268,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -15151,11 +17289,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -15172,30 +17310,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -15211,7 +17800,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -15232,15 +17821,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -15267,7 +17856,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -15279,28 +17882,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -15310,7 +17891,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -15324,7 +17905,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -15338,7 +17919,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -15359,97 +17940,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -15464,7 +17954,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -15481,11 +17971,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -15506,7 +18101,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -15529,19 +18124,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -15549,42 +18144,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -15595,34 +18204,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -15632,7 +18213,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -15660,15 +18241,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -15681,7 +18262,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -15702,62 +18283,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -15767,14 +18304,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -15788,18 +18325,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -15809,18 +18397,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -15840,89 +18491,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -15933,20 +18507,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -15956,237 +18516,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -16201,7 +18530,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -16218,53 +18547,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -16281,11 +18568,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -16302,11 +18589,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -16323,11 +18610,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -16344,11 +18631,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -16365,397 +18652,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -16763,13 +18670,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -16777,13 +18684,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -16791,13 +18698,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -16805,13 +18712,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -16819,13 +18726,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -16833,13 +18740,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -16847,64 +18754,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -16914,7 +18775,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -16928,7 +18789,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -16942,7 +18803,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -16956,7 +18817,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -16970,7 +18831,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -16984,7 +18845,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -16998,7 +18859,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -17012,7 +18873,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -17033,13 +18894,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -17047,80 +18908,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -17130,168 +18971,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -17304,71 +18985,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -17402,7 +19055,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -17423,77 +19118,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -17507,7 +19132,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -17521,7 +19146,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -17535,7 +19160,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -17552,81 +19177,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -17640,7 +19251,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -17657,61 +19268,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -17731,7 +19363,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -17747,11 +19379,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -17768,11 +19400,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -17789,12 +19421,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -17810,12 +19442,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -17831,12 +19463,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -17852,11 +19484,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -17873,84 +19505,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -17967,11 +19522,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -17988,15 +19543,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -18009,7 +19564,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -18028,7 +19583,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -18039,7 +19594,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -18050,8 +19605,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -18061,7 +19616,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -18072,8 +19627,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -18094,8 +19649,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -18116,8 +19671,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -18138,8 +19693,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -18160,8 +19715,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -18182,8 +19737,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -18204,8 +19759,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -18226,7 +19781,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -18241,15 +19972,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -18259,18 +19990,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -18281,18 +20012,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -18303,18 +20034,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -18325,18 +20056,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -18347,18 +20078,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -18369,18 +20100,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -18391,18 +20122,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -18413,18 +20144,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -18434,84 +20165,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -18524,7 +20309,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -18536,7 +20321,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -18548,7 +20333,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -18560,7 +20345,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18572,7 +20357,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -18584,7 +20369,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18596,7 +20381,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -18608,7 +20393,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18620,7 +20405,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -18632,7 +20417,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18644,7 +20429,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18656,7 +20441,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18668,7 +20453,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -18680,7 +20465,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -18692,7 +20477,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18704,7 +20489,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -18716,7 +20501,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -18728,7 +20513,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -18747,12 +20532,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -18768,7 +20553,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18789,7 +20574,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18810,12 +20595,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -18831,7 +20616,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18852,7 +20637,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -18873,16 +20658,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -18901,84 +20686,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -18988,7 +20707,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -19002,7 +20721,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -19023,7 +20742,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -19037,7 +20756,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -19058,12 +20777,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -19079,7 +20798,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19093,7 +20812,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -19107,7 +20826,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -19128,7 +20847,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -19149,7 +20868,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -19175,7 +20894,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -19191,11 +20910,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -19212,7 +20931,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19226,7 +20945,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19247,7 +20966,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -19268,7 +20987,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -19285,79 +21004,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -19394,7 +21050,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -19408,10 +21078,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -19427,11 +21099,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -19448,11 +21120,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -19469,7 +21141,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19490,7 +21162,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19511,7 +21183,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19532,12 +21204,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -19553,7 +21225,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19565,6 +21237,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -19574,28 +21258,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19612,16 +21275,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -19633,46 +21296,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -19686,7 +21363,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -19700,7 +21377,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -19717,11 +21394,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19738,11 +21415,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19756,7 +21433,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19770,7 +21447,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19784,7 +21461,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -19801,15 +21478,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -19826,7 +21524,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19847,7 +21545,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -19868,7 +21566,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -19889,11 +21587,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19903,11 +21601,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19917,11 +21615,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19931,11 +21629,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19945,11 +21643,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19959,11 +21657,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19973,11 +21671,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -19994,7 +21692,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -20008,7 +21706,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -20022,7 +21720,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -20036,7 +21734,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -20050,7 +21748,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -20064,7 +21762,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -20085,7 +21783,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -20099,7 +21797,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -20125,7 +21823,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -20141,12 +21839,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -20162,12 +21860,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -20183,12 +21881,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -20200,11 +21898,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -20221,154 +21919,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -20376,19 +22021,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -20403,7 +22042,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -20417,7 +22352,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -20431,7 +22366,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -20445,7 +22380,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -20462,17 +22397,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -20480,29 +22420,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -20511,17 +22518,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -20529,13 +22536,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -20543,13 +22550,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -20557,13 +22585,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -20574,63 +22602,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -20647,11 +22654,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -20665,10 +22672,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -20682,11 +22689,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -20700,7 +22770,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -20721,7 +22791,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -20742,24 +22812,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -20773,24 +22833,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -20800,11 +22850,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -20821,11 +22913,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -20842,78 +22976,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -20923,29 +23001,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -20958,8 +23036,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -20979,15 +23057,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21000,8 +23092,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -21021,8 +23113,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -21033,8 +23222,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -21048,12 +23237,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -21073,8 +23345,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -21094,7 +23366,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -21111,11 +23425,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -21132,28 +23446,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -21162,7 +23455,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -21183,29 +23476,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21218,15 +23553,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21239,15 +23588,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21260,15 +23665,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21281,18 +23714,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -21302,29 +23749,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21337,8 +23798,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -21358,11 +23819,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -21379,7 +23840,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -21400,43 +23861,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21449,43 +23882,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21498,43 +23903,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21547,40 +23924,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -21596,36 +23991,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -21645,43 +24068,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21694,15 +24117,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -21715,26 +24166,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -21750,7 +24209,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -21764,7 +24550,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -21781,46 +24567,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -21834,7 +24585,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -21851,51 +24602,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -21904,12 +24618,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -21921,12 +24633,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -21942,11 +24800,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -21963,11 +24863,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -21984,11 +24884,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -22005,11 +24905,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -22026,30 +24926,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -22065,7 +25416,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -22086,15 +25437,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -22121,7 +25472,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -22133,28 +25498,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -22164,7 +25507,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -22178,7 +25521,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -22192,7 +25535,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -22213,97 +25556,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -22318,7 +25570,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -22335,11 +25587,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -22360,7 +25717,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -22383,19 +25740,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -22403,42 +25760,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -22449,34 +25820,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -22486,7 +25829,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -22514,15 +25857,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -22535,7 +25878,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -22556,62 +25899,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -22621,14 +25920,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -22642,18 +25941,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -22663,18 +26013,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -22694,89 +26107,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -22787,20 +26123,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -22810,237 +26132,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -23055,7 +26146,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -23072,53 +26163,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -23135,11 +26184,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -23156,11 +26205,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -23177,11 +26226,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -23198,11 +26247,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -23219,397 +26268,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -23617,13 +26286,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -23631,13 +26300,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -23645,13 +26314,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -23659,13 +26328,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -23673,13 +26342,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -23687,13 +26356,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -23701,64 +26370,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -23768,7 +26391,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -23782,7 +26405,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -23796,7 +26419,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -23810,7 +26433,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -23824,7 +26447,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -23838,7 +26461,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -23852,7 +26475,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -23866,7 +26489,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -23887,13 +26510,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -23901,80 +26524,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -23984,168 +26587,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -24158,71 +26601,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -24256,7 +26671,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -24277,77 +26734,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -24361,7 +26748,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -24375,7 +26762,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -24389,7 +26776,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -24406,81 +26793,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -24494,7 +26867,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -24511,61 +26884,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -24585,7 +26979,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -24601,11 +26995,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -24622,11 +27016,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -24643,12 +27037,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -24664,12 +27058,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -24685,12 +27079,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -24706,11 +27100,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -24727,84 +27121,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -24821,11 +27138,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -24842,15 +27159,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -24863,7 +27180,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -24882,7 +27199,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -24893,7 +27210,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -24904,8 +27221,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -24915,7 +27232,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -24926,8 +27243,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -24948,8 +27265,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -24970,8 +27287,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -24992,8 +27309,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -25014,8 +27331,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -25036,8 +27353,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -25058,8 +27375,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -25080,7 +27397,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -25095,15 +27588,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -25113,18 +27606,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -25135,18 +27628,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -25157,18 +27650,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -25179,18 +27672,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -25201,18 +27694,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -25223,18 +27716,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -25245,18 +27738,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -25267,18 +27760,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -25288,84 +27781,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -25378,7 +27925,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -25390,7 +27937,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -25402,7 +27949,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -25414,7 +27961,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25426,7 +27973,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -25438,7 +27985,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25450,7 +27997,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -25462,7 +28009,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25474,7 +28021,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -25486,7 +28033,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25498,7 +28045,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25510,7 +28057,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25522,7 +28069,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -25534,7 +28081,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -25546,7 +28093,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25558,7 +28105,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -25570,7 +28117,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -25582,7 +28129,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -25601,12 +28148,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -25622,7 +28169,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25643,7 +28190,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25664,12 +28211,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -25685,7 +28232,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25706,7 +28253,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -25727,16 +28274,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -25755,84 +28302,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -25842,7 +28323,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -25856,7 +28337,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -25877,7 +28358,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -25891,7 +28372,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -25912,12 +28393,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -25933,7 +28414,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -25947,7 +28428,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -25961,7 +28442,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -25982,7 +28463,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -26003,7 +28484,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -26029,7 +28510,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -26045,11 +28526,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -26066,7 +28547,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -26080,7 +28561,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -26101,7 +28582,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -26122,7 +28603,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -26139,79 +28620,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -26248,7 +28666,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -26262,10 +28694,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -26281,11 +28715,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -26302,11 +28736,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -26323,7 +28757,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26344,7 +28778,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26365,7 +28799,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26386,12 +28820,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -26407,7 +28841,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26419,6 +28853,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -26428,28 +28874,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26466,16 +28891,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -26487,46 +28912,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -26540,7 +28979,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -26554,7 +28993,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -26571,11 +29010,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26592,11 +29031,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -26610,7 +29049,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -26624,7 +29063,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -26638,7 +29077,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -26655,15 +29094,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -26680,7 +29140,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26701,7 +29161,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -26722,7 +29182,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -26743,11 +29203,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26757,11 +29217,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26771,11 +29231,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26785,11 +29245,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26799,11 +29259,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26813,11 +29273,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26827,11 +29287,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -26848,7 +29308,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -26862,7 +29322,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -26876,7 +29336,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -26890,7 +29350,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -26904,7 +29364,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -26918,7 +29378,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -26939,7 +29399,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -26953,7 +29413,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -26979,7 +29439,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -26995,12 +29455,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -27016,12 +29476,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -27037,12 +29497,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -27054,11 +29514,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -27075,154 +29535,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -27230,19 +29637,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -27257,7 +29658,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -27271,7 +29968,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -27285,7 +29982,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -27299,7 +29996,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -27316,17 +30013,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -27334,29 +30036,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -27365,17 +30134,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -27383,13 +30152,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -27397,13 +30166,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -27411,13 +30201,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -27428,63 +30218,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -27501,11 +30270,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -27519,10 +30288,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -27536,11 +30305,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -27554,7 +30386,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -27575,7 +30407,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -27596,24 +30428,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -27627,24 +30449,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -27654,11 +30466,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -27675,11 +30529,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -27696,78 +30592,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -27777,29 +30617,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -27812,8 +30652,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -27833,15 +30673,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -27854,8 +30708,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -27875,8 +30729,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -27887,8 +30838,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -27902,12 +30853,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -27927,8 +30961,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -27948,7 +30982,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -27965,11 +31041,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -27986,28 +31062,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -28016,7 +31071,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -28037,29 +31092,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28072,15 +31169,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28093,15 +31204,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28114,15 +31281,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28135,18 +31330,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -28156,29 +31365,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28191,8 +31414,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -28212,11 +31435,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -28233,7 +31456,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -28254,43 +31477,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28303,43 +31498,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28352,43 +31519,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28401,40 +31540,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -28450,36 +31607,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -28499,43 +31684,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28548,15 +31733,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28569,26 +31782,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -28604,7 +31825,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -28618,7 +32166,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -28635,46 +32183,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -28688,7 +32201,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -28705,51 +32218,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -28758,12 +32234,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -28775,12 +32249,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -28796,11 +32416,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -28817,11 +32479,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -28838,11 +32500,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -28859,11 +32521,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -28880,30 +32542,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -28919,7 +33032,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -28940,15 +33053,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -28975,7 +33088,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -28987,28 +33114,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -29018,7 +33123,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -29032,7 +33137,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -29046,7 +33151,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -29067,97 +33172,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -29172,7 +33186,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -29189,11 +33203,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -29214,7 +33333,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -29237,19 +33356,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -29257,42 +33376,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -29303,34 +33436,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -29340,7 +33445,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -29368,15 +33473,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -29389,7 +33494,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -29410,62 +33515,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -29475,14 +33536,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -29496,18 +33557,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -29517,18 +33629,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -29548,89 +33723,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -29641,20 +33739,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -29664,237 +33748,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -29909,7 +33762,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -29926,53 +33779,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -29989,11 +33800,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -30010,11 +33821,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -30031,11 +33842,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -30052,11 +33863,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -30073,397 +33884,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -30471,13 +33902,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -30485,13 +33916,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -30499,13 +33930,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -30513,13 +33944,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -30527,13 +33958,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -30541,13 +33972,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -30555,64 +33986,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -30622,7 +34007,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -30636,7 +34021,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -30650,7 +34035,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -30664,7 +34049,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -30678,7 +34063,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -30692,7 +34077,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -30706,7 +34091,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -30720,7 +34105,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -30741,13 +34126,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -30755,80 +34140,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -30838,168 +34203,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -31012,71 +34217,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -31110,7 +34287,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -31131,77 +34350,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -31215,7 +34364,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -31229,7 +34378,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -31243,7 +34392,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -31260,81 +34409,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -31348,7 +34483,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -31365,61 +34500,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -31439,7 +34595,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -31455,11 +34611,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -31476,11 +34632,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -31497,12 +34653,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -31518,12 +34674,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -31539,12 +34695,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -31560,11 +34716,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -31581,84 +34737,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -31675,11 +34754,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -31696,15 +34775,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -31717,7 +34796,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -31736,7 +34815,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -31747,7 +34826,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -31758,8 +34837,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -31769,7 +34848,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -31780,8 +34859,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -31802,8 +34881,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -31824,8 +34903,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -31846,8 +34925,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -31868,8 +34947,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -31890,8 +34969,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -31912,8 +34991,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -31934,7 +35013,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -31949,15 +35204,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -31967,18 +35222,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -31989,18 +35244,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -32011,18 +35266,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -32033,18 +35288,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -32055,18 +35310,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -32077,18 +35332,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -32099,18 +35354,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -32121,18 +35376,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -32142,84 +35397,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -32232,7 +35541,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -32244,7 +35553,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -32256,7 +35565,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -32268,7 +35577,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32280,7 +35589,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -32292,7 +35601,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32304,7 +35613,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -32316,7 +35625,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32328,7 +35637,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -32340,7 +35649,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32352,7 +35661,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32364,7 +35673,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32376,7 +35685,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -32388,7 +35697,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -32400,7 +35709,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32412,7 +35721,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -32424,7 +35733,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -32436,7 +35745,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -32455,12 +35764,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -32476,7 +35785,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32497,7 +35806,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32518,12 +35827,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -32539,7 +35848,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32560,7 +35869,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32581,16 +35890,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -32609,84 +35918,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -32696,7 +35939,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -32710,7 +35953,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -32731,7 +35974,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -32745,7 +35988,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -32766,12 +36009,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -32787,7 +36030,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -32801,7 +36044,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -32815,7 +36058,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -32836,7 +36079,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32857,7 +36100,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32883,7 +36126,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -32899,11 +36142,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -32920,7 +36163,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -32934,7 +36177,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -32955,7 +36198,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32976,7 +36219,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -32993,79 +36236,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -33102,7 +36282,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -33116,10 +36310,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -33135,11 +36331,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -33156,11 +36352,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -33177,7 +36373,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33198,7 +36394,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33219,7 +36415,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33240,12 +36436,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -33261,7 +36457,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33273,6 +36469,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -33282,28 +36490,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33320,16 +36507,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -33341,46 +36528,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -33394,7 +36595,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -33408,7 +36609,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -33425,11 +36626,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33446,11 +36647,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -33464,7 +36665,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -33478,7 +36679,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -33492,7 +36693,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -33509,15 +36710,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -33534,7 +36756,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33555,7 +36777,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -33576,7 +36798,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33597,11 +36819,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33611,11 +36833,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33625,11 +36847,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33639,11 +36861,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33653,11 +36875,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33667,11 +36889,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33681,11 +36903,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -33702,7 +36924,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -33716,7 +36938,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -33730,7 +36952,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -33744,7 +36966,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -33758,7 +36980,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -33772,7 +36994,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -33793,7 +37015,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -33807,7 +37029,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -33833,7 +37055,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -33849,12 +37071,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -33870,12 +37092,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -33891,12 +37113,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -33908,11 +37130,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -33929,154 +37151,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -34084,19 +37253,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -34111,7 +37274,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -34125,7 +37584,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -34139,7 +37598,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -34153,7 +37612,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -34170,17 +37629,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -34188,29 +37652,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34219,17 +37750,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -34237,13 +37768,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -34251,13 +37782,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -34265,13 +37817,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -34282,63 +37834,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -34355,11 +37886,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -34373,10 +37904,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -34390,11 +37921,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -34408,7 +38002,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -34429,7 +38023,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -34450,24 +38044,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -34481,24 +38065,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -34508,11 +38082,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -34529,11 +38145,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -34550,78 +38208,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -34631,29 +38233,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34666,8 +38268,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -34687,15 +38289,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34708,8 +38324,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -34729,8 +38345,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -34741,8 +38454,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -34756,12 +38469,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -34781,8 +38577,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -34802,7 +38598,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -34819,11 +38657,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -34840,28 +38678,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -34870,7 +38687,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -34891,29 +38708,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34926,15 +38785,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34947,15 +38820,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34968,15 +38897,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -34989,18 +38946,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -35010,29 +38981,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35045,8 +39030,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -35066,11 +39051,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -35087,7 +39072,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -35108,43 +39093,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35157,43 +39114,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35206,43 +39135,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35255,40 +39156,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -35304,36 +39223,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -35353,43 +39300,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35402,15 +39349,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35423,26 +39398,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -35458,7 +39441,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -35472,7 +39782,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -35489,46 +39799,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -35542,7 +39817,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -35559,51 +39834,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -35612,12 +39850,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -35629,12 +39865,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -35650,11 +40032,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -35671,11 +40095,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -35692,11 +40116,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -35713,11 +40137,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -35734,30 +40158,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -35773,7 +40648,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -35794,15 +40669,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -35829,7 +40704,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -35841,28 +40730,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -35872,7 +40739,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -35886,7 +40753,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -35900,7 +40767,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -35921,97 +40788,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -36026,7 +40802,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -36043,11 +40819,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -36068,7 +40949,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -36091,19 +40972,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -36111,42 +40992,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -36157,34 +41052,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -36194,7 +41061,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -36222,15 +41089,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -36243,7 +41110,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -36264,62 +41131,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -36329,14 +41152,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -36350,18 +41173,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -36371,18 +41245,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -36402,89 +41339,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -36495,20 +41355,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -36518,237 +41364,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -36763,7 +41378,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -36780,53 +41395,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -36843,11 +41416,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -36864,11 +41437,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -36885,11 +41458,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -36906,11 +41479,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -36927,397 +41500,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -37325,13 +41518,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -37339,13 +41532,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -37353,13 +41546,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -37367,13 +41560,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -37381,13 +41574,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -37395,13 +41588,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -37409,64 +41602,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -37476,7 +41623,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -37490,7 +41637,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -37504,7 +41651,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -37518,7 +41665,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -37532,7 +41679,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -37546,7 +41693,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -37560,7 +41707,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -37574,7 +41721,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -37595,13 +41742,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -37609,80 +41756,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -37692,168 +41819,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -37866,71 +41833,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -37964,7 +41903,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -37985,77 +41966,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -38069,7 +41980,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -38083,7 +41994,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -38097,7 +42008,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -38114,81 +42025,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -38202,7 +42099,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -38219,61 +42116,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -38293,7 +42211,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -38309,11 +42227,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -38330,11 +42248,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -38351,12 +42269,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -38372,12 +42290,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -38393,12 +42311,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -38414,11 +42332,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -38435,84 +42353,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -38529,11 +42370,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -38550,15 +42391,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -38571,7 +42412,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -38590,7 +42431,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -38601,7 +42442,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -38612,8 +42453,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -38623,7 +42464,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -38634,8 +42475,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -38656,8 +42497,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -38678,8 +42519,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -38700,8 +42541,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -38722,8 +42563,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -38744,8 +42585,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -38766,8 +42607,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -38788,7 +42629,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -38803,15 +42820,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -38821,18 +42838,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -38843,18 +42860,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -38865,18 +42882,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -38887,18 +42904,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -38909,18 +42926,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -38931,18 +42948,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -38953,18 +42970,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -38975,18 +42992,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -38996,84 +43013,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -39086,7 +43157,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -39098,7 +43169,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -39110,7 +43181,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -39122,7 +43193,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39134,7 +43205,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -39146,7 +43217,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39158,7 +43229,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -39170,7 +43241,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39182,7 +43253,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -39194,7 +43265,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39206,7 +43277,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39218,7 +43289,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39230,7 +43301,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -39242,7 +43313,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -39254,7 +43325,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39266,7 +43337,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -39278,7 +43349,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -39290,7 +43361,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -39309,12 +43380,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -39330,7 +43401,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39351,7 +43422,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39372,12 +43443,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -39393,7 +43464,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39414,7 +43485,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39435,16 +43506,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -39463,84 +43534,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -39550,7 +43555,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -39564,7 +43569,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -39585,7 +43590,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -39599,7 +43604,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -39620,12 +43625,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -39641,7 +43646,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -39655,7 +43660,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -39669,7 +43674,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -39690,7 +43695,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39711,7 +43716,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39737,7 +43742,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -39753,11 +43758,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -39774,7 +43779,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -39788,7 +43793,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -39809,7 +43814,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39830,7 +43835,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -39847,79 +43852,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -39956,7 +43898,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -39970,10 +43926,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -39989,11 +43947,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -40010,11 +43968,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -40031,7 +43989,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40052,7 +44010,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40073,7 +44031,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40094,12 +44052,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -40115,7 +44073,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40127,6 +44085,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -40136,28 +44106,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40174,16 +44123,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -40195,46 +44144,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -40248,7 +44211,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -40262,7 +44225,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -40279,11 +44242,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40300,11 +44263,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -40318,7 +44281,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -40332,7 +44295,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -40346,7 +44309,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -40363,15 +44326,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -40388,7 +44372,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40409,7 +44393,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -40430,7 +44414,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40451,11 +44435,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40465,11 +44449,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40479,11 +44463,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40493,11 +44477,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40507,11 +44491,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40521,11 +44505,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40535,11 +44519,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -40556,7 +44540,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -40570,7 +44554,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -40584,7 +44568,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -40598,7 +44582,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -40612,7 +44596,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -40626,7 +44610,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -40647,7 +44631,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -40661,7 +44645,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -40687,7 +44671,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -40703,12 +44687,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -40724,12 +44708,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -40745,12 +44729,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -40762,11 +44746,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40783,154 +44767,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -40938,19 +44869,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -40965,7 +44890,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -40979,7 +45200,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -40993,7 +45214,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -41007,7 +45228,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -41024,17 +45245,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -41042,29 +45268,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41073,17 +45366,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -41091,13 +45384,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -41105,13 +45398,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -41119,13 +45433,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -41136,63 +45450,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -41209,11 +45502,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -41227,10 +45520,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -41244,11 +45537,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -41262,7 +45618,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -41283,7 +45639,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -41304,24 +45660,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -41335,24 +45681,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -41362,11 +45698,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -41383,11 +45761,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -41404,78 +45824,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -41485,29 +45849,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41520,8 +45884,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -41541,15 +45905,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41562,8 +45940,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -41583,8 +45961,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -41595,8 +46070,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -41610,12 +46085,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -41635,8 +46193,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -41656,7 +46214,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -41673,11 +46273,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -41694,28 +46294,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -41724,7 +46303,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -41745,29 +46324,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41780,15 +46401,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41801,15 +46436,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41822,15 +46513,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41843,18 +46562,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -41864,29 +46597,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -41899,8 +46646,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -41920,11 +46667,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -41941,7 +46688,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -41962,43 +46709,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -42011,43 +46730,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -42060,43 +46751,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -42109,40 +46772,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -42158,36 +46839,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -42207,43 +46916,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -42256,15 +46965,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -42277,26 +47014,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -42312,7 +47057,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -42326,7 +47398,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -42343,46 +47415,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -42396,7 +47433,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -42413,51 +47450,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -42466,12 +47466,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -42483,12 +47481,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -42504,11 +47648,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -42525,11 +47711,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -42546,11 +47732,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -42567,11 +47753,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -42588,30 +47774,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -42627,7 +48264,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -42648,15 +48285,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -42683,7 +48320,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -42695,28 +48346,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -42726,7 +48355,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -42740,7 +48369,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -42754,7 +48383,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -42775,97 +48404,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -42880,7 +48418,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -42897,11 +48435,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -42922,7 +48565,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -42945,19 +48588,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -42965,42 +48608,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -43011,34 +48668,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -43048,7 +48677,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -43076,15 +48705,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -43097,7 +48726,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -43118,62 +48747,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -43183,14 +48768,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -43204,18 +48789,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -43225,18 +48861,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -43256,89 +48955,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -43349,20 +48971,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -43372,237 +48980,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -43617,7 +48994,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -43634,53 +49011,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -43697,11 +49032,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -43718,11 +49053,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -43739,11 +49074,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -43760,11 +49095,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -43781,397 +49116,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -44179,13 +49134,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -44193,13 +49148,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -44207,13 +49162,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -44221,13 +49176,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -44235,13 +49190,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -44249,13 +49204,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -44263,64 +49218,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -44330,7 +49239,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -44344,7 +49253,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -44358,7 +49267,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -44372,7 +49281,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -44386,7 +49295,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -44400,7 +49309,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -44414,7 +49323,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -44428,7 +49337,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -44449,13 +49358,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -44463,80 +49372,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -44546,168 +49435,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -44720,71 +49449,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -44818,7 +49519,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -44839,77 +49582,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -44923,7 +49596,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -44937,7 +49610,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -44951,7 +49624,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -44968,81 +49641,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -45056,7 +49715,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -45073,61 +49732,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -45147,7 +49827,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -45163,11 +49843,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -45184,11 +49864,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -45205,12 +49885,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -45226,12 +49906,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -45247,12 +49927,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -45268,11 +49948,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -45289,84 +49969,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -45383,11 +49986,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -45404,15 +50007,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -45425,7 +50028,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -45444,7 +50047,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -45455,7 +50058,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -45466,8 +50069,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -45477,7 +50080,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -45488,8 +50091,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -45510,8 +50113,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -45532,8 +50135,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -45554,8 +50157,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -45576,8 +50179,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -45598,8 +50201,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -45620,8 +50223,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -45642,7 +50245,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -45657,15 +50436,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -45675,18 +50454,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -45697,18 +50476,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -45719,18 +50498,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -45741,18 +50520,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -45763,18 +50542,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -45785,18 +50564,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -45807,18 +50586,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -45829,18 +50608,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -45850,84 +50629,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -45940,7 +50773,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -45952,7 +50785,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -45964,7 +50797,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -45976,7 +50809,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -45988,7 +50821,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -46000,7 +50833,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46012,7 +50845,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -46024,7 +50857,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46036,7 +50869,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -46048,7 +50881,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46060,7 +50893,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46072,7 +50905,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46084,7 +50917,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -46096,7 +50929,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -46108,7 +50941,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46120,7 +50953,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -46132,7 +50965,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -46144,7 +50977,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -46163,12 +50996,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -46184,7 +51017,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46205,7 +51038,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46226,12 +51059,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -46247,7 +51080,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46268,7 +51101,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46289,16 +51122,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -46317,84 +51150,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -46404,7 +51171,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -46418,7 +51185,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -46439,7 +51206,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -46453,7 +51220,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -46474,12 +51241,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -46495,7 +51262,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -46509,7 +51276,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -46523,7 +51290,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -46544,7 +51311,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46565,7 +51332,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46591,7 +51358,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -46607,11 +51374,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -46628,7 +51395,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -46642,7 +51409,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -46663,7 +51430,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46684,7 +51451,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -46701,79 +51468,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -46810,7 +51514,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -46824,10 +51542,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -46843,11 +51563,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -46864,11 +51584,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -46885,7 +51605,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -46906,7 +51626,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -46927,7 +51647,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -46948,12 +51668,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -46969,7 +51689,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -46981,6 +51701,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -46990,28 +51722,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -47028,16 +51739,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -47049,46 +51760,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -47102,7 +51827,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -47116,7 +51841,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -47133,11 +51858,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -47154,11 +51879,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -47172,7 +51897,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -47186,7 +51911,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -47200,7 +51925,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -47217,15 +51942,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -47242,7 +51988,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -47263,7 +52009,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -47284,7 +52030,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -47305,11 +52051,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47319,11 +52065,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47333,11 +52079,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47347,11 +52093,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47361,11 +52107,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47375,11 +52121,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47389,11 +52135,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -47410,7 +52156,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -47424,7 +52170,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -47438,7 +52184,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -47452,7 +52198,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -47466,7 +52212,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -47480,7 +52226,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -47501,7 +52247,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -47515,7 +52261,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -47541,7 +52287,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -47557,12 +52303,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -47578,12 +52324,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -47599,12 +52345,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -47616,11 +52362,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -47637,154 +52383,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -47792,19 +52485,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -47819,7 +52506,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -47833,7 +52816,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -47847,7 +52830,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -47861,7 +52844,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -47878,17 +52861,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -47896,29 +52884,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -47927,17 +52982,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -47945,13 +53000,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -47959,13 +53014,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -47973,13 +53049,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -47990,63 +53066,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -48063,11 +53118,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -48081,10 +53136,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -48098,11 +53153,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -48116,7 +53234,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -48137,7 +53255,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -48158,24 +53276,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -48189,24 +53297,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -48216,11 +53314,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -48237,11 +53377,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -48258,78 +53440,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -48339,29 +53465,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48374,8 +53500,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -48395,15 +53521,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48416,8 +53556,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -48437,8 +53577,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -48449,8 +53686,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -48464,12 +53701,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -48489,8 +53809,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -48510,7 +53830,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -48527,11 +53889,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -48548,28 +53910,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -48578,7 +53919,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -48599,29 +53940,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48634,15 +54017,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48655,15 +54052,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48676,15 +54129,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48697,18 +54178,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -48718,29 +54213,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48753,8 +54262,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -48774,11 +54283,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -48795,7 +54304,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -48816,43 +54325,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48865,43 +54346,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48914,43 +54367,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -48963,40 +54388,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -49012,36 +54455,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -49061,43 +54532,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -49110,15 +54581,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -49131,26 +54630,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -49166,7 +54673,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -49180,7 +55014,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -49197,46 +55031,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -49250,7 +55049,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -49267,51 +55066,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -49320,12 +55082,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -49337,12 +55097,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -49358,11 +55264,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -49379,11 +55327,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -49400,11 +55348,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -49421,11 +55369,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -49442,30 +55390,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -49481,7 +55880,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -49502,15 +55901,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -49537,7 +55936,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -49549,28 +55962,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -49580,7 +55971,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -49594,7 +55985,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -49608,7 +55999,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -49629,97 +56020,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -49734,7 +56034,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -49751,11 +56051,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -49776,7 +56181,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -49799,19 +56204,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -49819,42 +56224,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -49865,34 +56284,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -49902,7 +56293,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -49930,15 +56321,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -49951,7 +56342,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -49972,62 +56363,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -50037,14 +56384,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -50058,18 +56405,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -50079,18 +56477,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -50110,89 +56571,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -50203,20 +56587,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -50226,237 +56596,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -50471,7 +56610,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -50488,53 +56627,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -50551,11 +56648,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -50572,11 +56669,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -50593,11 +56690,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -50614,11 +56711,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -50635,397 +56732,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -51033,13 +56750,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -51047,13 +56764,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -51061,13 +56778,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -51075,13 +56792,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -51089,13 +56806,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -51103,13 +56820,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -51117,64 +56834,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -51184,7 +56855,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -51198,7 +56869,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -51212,7 +56883,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -51226,7 +56897,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -51240,7 +56911,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -51254,7 +56925,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -51268,7 +56939,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -51282,7 +56953,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -51303,13 +56974,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -51317,80 +56988,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -51400,168 +57051,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -51574,71 +57065,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -51672,7 +57135,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -51693,77 +57198,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -51777,7 +57212,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -51791,7 +57226,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -51805,7 +57240,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -51822,81 +57257,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -51910,7 +57331,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -51927,61 +57348,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -52001,7 +57443,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -52017,11 +57459,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -52038,11 +57480,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -52059,12 +57501,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -52080,12 +57522,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -52101,12 +57543,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -52122,11 +57564,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -52143,84 +57585,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -52237,11 +57602,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -52258,15 +57623,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -52279,7 +57644,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -52298,7 +57663,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -52309,7 +57674,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -52320,8 +57685,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -52331,7 +57696,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -52342,8 +57707,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -52364,8 +57729,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -52386,8 +57751,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -52408,8 +57773,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -52430,8 +57795,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -52452,8 +57817,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -52474,8 +57839,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -52496,7 +57861,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -52511,15 +58052,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -52529,18 +58070,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -52551,18 +58092,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -52573,18 +58114,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -52595,18 +58136,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -52617,18 +58158,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -52639,18 +58180,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -52661,18 +58202,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -52683,18 +58224,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -52704,84 +58245,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -52794,7 +58389,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -52806,7 +58401,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -52818,7 +58413,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -52830,7 +58425,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52842,7 +58437,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -52854,7 +58449,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52866,7 +58461,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -52878,7 +58473,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52890,7 +58485,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -52902,7 +58497,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52914,7 +58509,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52926,7 +58521,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52938,7 +58533,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -52950,7 +58545,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -52962,7 +58557,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -52974,7 +58569,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -52986,7 +58581,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -52998,7 +58593,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -53017,12 +58612,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -53038,7 +58633,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53059,7 +58654,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53080,12 +58675,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -53101,7 +58696,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53122,7 +58717,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53143,16 +58738,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -53171,84 +58766,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -53258,7 +58787,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -53272,7 +58801,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -53293,7 +58822,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -53307,7 +58836,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -53328,12 +58857,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -53349,7 +58878,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -53363,7 +58892,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -53377,7 +58906,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -53398,7 +58927,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53419,7 +58948,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53445,7 +58974,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -53461,11 +58990,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -53482,7 +59011,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -53496,7 +59025,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -53517,7 +59046,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53538,7 +59067,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -53555,79 +59084,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -53664,7 +59130,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -53678,10 +59158,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -53697,11 +59179,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -53718,11 +59200,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -53739,7 +59221,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -53760,7 +59242,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -53781,7 +59263,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -53802,12 +59284,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -53823,7 +59305,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -53835,6 +59317,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -53844,28 +59338,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -53882,16 +59355,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -53903,46 +59376,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -53956,7 +59443,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -53970,7 +59457,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -53987,11 +59474,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -54008,11 +59495,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -54026,7 +59513,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -54040,7 +59527,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -54054,7 +59541,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -54071,15 +59558,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -54096,7 +59604,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -54117,7 +59625,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -54138,7 +59646,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -54159,11 +59667,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54173,11 +59681,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54187,11 +59695,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54201,11 +59709,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54215,11 +59723,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54229,11 +59737,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54243,11 +59751,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -54264,7 +59772,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -54278,7 +59786,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -54292,7 +59800,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -54306,7 +59814,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -54320,7 +59828,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -54334,7 +59842,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -54355,7 +59863,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -54369,7 +59877,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -54395,7 +59903,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -54411,12 +59919,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -54432,12 +59940,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -54453,12 +59961,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -54470,11 +59978,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -54491,154 +59999,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -54646,19 +60101,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -54673,7 +60122,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -54687,7 +60432,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -54701,7 +60446,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -54715,7 +60460,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -54732,17 +60477,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -54750,29 +60500,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -54781,17 +60598,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -54799,13 +60616,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -54813,13 +60630,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -54827,13 +60665,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -54844,63 +60682,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -54917,11 +60734,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -54935,10 +60752,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -54952,11 +60769,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -54970,7 +60850,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -54991,7 +60871,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -55012,24 +60892,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -55043,24 +60913,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -55070,11 +60930,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -55091,11 +60993,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -55112,78 +61056,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -55193,29 +61081,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55228,8 +61116,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -55249,15 +61137,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55270,8 +61172,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -55291,8 +61193,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -55303,8 +61302,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -55318,12 +61317,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -55343,8 +61425,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -55364,7 +61446,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -55381,11 +61505,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -55402,28 +61526,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -55432,7 +61535,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -55453,29 +61556,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55488,15 +61633,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55509,15 +61668,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55530,15 +61745,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55551,18 +61794,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -55572,29 +61829,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55607,8 +61878,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -55628,11 +61899,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -55649,7 +61920,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -55670,43 +61941,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55719,43 +61962,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55768,43 +61983,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55817,40 +62004,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -55866,36 +62071,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -55915,43 +62148,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55964,15 +62197,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -55985,26 +62246,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -56020,7 +62289,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -56034,7 +62630,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -56051,46 +62647,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -56104,7 +62665,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -56121,51 +62682,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -56174,12 +62698,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -56191,12 +62713,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -56212,11 +62880,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -56233,11 +62943,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -56254,11 +62964,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -56275,11 +62985,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -56296,30 +63006,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -56335,7 +63496,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -56356,15 +63517,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -56391,7 +63552,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -56403,28 +63578,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -56434,7 +63587,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -56448,7 +63601,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -56462,7 +63615,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -56483,97 +63636,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -56588,7 +63650,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -56605,11 +63667,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -56630,7 +63797,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -56653,19 +63820,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -56673,42 +63840,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -56719,34 +63900,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -56756,7 +63909,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -56784,15 +63937,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -56805,7 +63958,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -56826,62 +63979,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -56891,14 +64000,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -56912,18 +64021,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -56933,18 +64093,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -56964,89 +64187,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -57057,20 +64203,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -57080,237 +64212,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -57325,7 +64226,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -57342,53 +64243,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -57405,11 +64264,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -57426,11 +64285,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -57447,11 +64306,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -57468,11 +64327,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -57489,397 +64348,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -57887,13 +64366,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -57901,13 +64380,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -57915,13 +64394,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -57929,13 +64408,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -57943,13 +64422,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -57957,13 +64436,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -57971,64 +64450,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -58038,7 +64471,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -58052,7 +64485,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -58066,7 +64499,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -58080,7 +64513,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -58094,7 +64527,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -58108,7 +64541,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -58122,7 +64555,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -58136,7 +64569,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -58157,13 +64590,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -58171,80 +64604,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -58254,168 +64667,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -58428,71 +64681,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -58526,7 +64751,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -58547,77 +64814,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -58631,7 +64828,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -58645,7 +64842,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -58659,7 +64856,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -58676,81 +64873,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -58764,7 +64947,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -58781,61 +64964,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -58855,7 +65059,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -58871,11 +65075,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -58892,11 +65096,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -58913,12 +65117,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -58934,12 +65138,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -58955,12 +65159,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -58976,11 +65180,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -58997,84 +65201,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -59091,11 +65218,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -59112,15 +65239,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -59133,7 +65260,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -59152,7 +65279,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -59163,7 +65290,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -59174,8 +65301,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -59185,7 +65312,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -59196,8 +65323,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -59218,8 +65345,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -59240,8 +65367,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -59262,8 +65389,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -59284,8 +65411,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -59306,8 +65433,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -59328,8 +65455,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -59350,7 +65477,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -59365,15 +65668,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -59383,18 +65686,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -59405,18 +65708,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -59427,18 +65730,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -59449,18 +65752,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -59471,18 +65774,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -59493,18 +65796,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -59515,18 +65818,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -59537,18 +65840,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -59558,84 +65861,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -59648,7 +66005,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -59660,7 +66017,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -59672,7 +66029,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -59684,7 +66041,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59696,7 +66053,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -59708,7 +66065,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59720,7 +66077,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -59732,7 +66089,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59744,7 +66101,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -59756,7 +66113,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59768,7 +66125,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59780,7 +66137,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59792,7 +66149,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -59804,7 +66161,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -59816,7 +66173,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59828,7 +66185,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -59840,7 +66197,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -59852,7 +66209,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -59871,12 +66228,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -59892,7 +66249,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59913,7 +66270,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59934,12 +66291,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -59955,7 +66312,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59976,7 +66333,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -59997,16 +66354,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -60025,84 +66382,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -60112,7 +66403,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -60126,7 +66417,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -60147,7 +66438,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -60161,7 +66452,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -60182,12 +66473,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -60203,7 +66494,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60217,7 +66508,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -60231,7 +66522,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -60252,7 +66543,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -60273,7 +66564,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -60299,7 +66590,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -60315,11 +66606,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -60336,7 +66627,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60350,7 +66641,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60371,7 +66662,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -60392,7 +66683,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -60409,79 +66700,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -60518,7 +66746,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -60532,10 +66774,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -60551,11 +66795,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -60572,11 +66816,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -60593,7 +66837,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60614,7 +66858,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60635,7 +66879,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60656,12 +66900,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -60677,7 +66921,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60689,6 +66933,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -60698,28 +66954,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60736,16 +66971,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -60757,46 +66992,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -60810,7 +67059,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -60824,7 +67073,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -60841,11 +67090,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60862,11 +67111,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60880,7 +67129,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60894,7 +67143,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60908,7 +67157,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -60925,15 +67174,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -60950,7 +67220,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -60971,7 +67241,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -60992,7 +67262,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -61013,11 +67283,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61027,11 +67297,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61041,11 +67311,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61055,11 +67325,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61069,11 +67339,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61083,11 +67353,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61097,11 +67367,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -61118,7 +67388,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -61132,7 +67402,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -61146,7 +67416,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -61160,7 +67430,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -61174,7 +67444,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -61188,7 +67458,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -61209,7 +67479,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -61223,7 +67493,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -61249,7 +67519,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -61265,12 +67535,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -61286,12 +67556,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -61307,12 +67577,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -61324,11 +67594,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -61345,154 +67615,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -61500,19 +67717,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -61527,7 +67738,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -61541,7 +68048,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -61555,7 +68062,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -61569,7 +68076,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -61586,17 +68093,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -61604,29 +68116,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -61635,17 +68214,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -61653,13 +68232,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -61667,13 +68246,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -61681,13 +68281,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -61698,63 +68298,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -61771,11 +68350,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -61789,10 +68368,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -61806,11 +68385,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -61824,7 +68466,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -61845,7 +68487,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -61866,24 +68508,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -61897,24 +68529,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -61924,11 +68546,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -61945,11 +68609,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -61966,78 +68672,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -62047,29 +68697,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62082,8 +68732,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -62103,15 +68753,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62124,8 +68788,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -62145,8 +68809,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -62157,8 +68918,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -62172,12 +68933,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -62197,8 +69041,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -62218,7 +69062,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -62235,11 +69121,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -62256,28 +69142,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -62286,7 +69151,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -62307,29 +69172,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62342,15 +69249,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62363,15 +69284,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62384,15 +69361,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62405,18 +69410,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -62426,29 +69445,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62461,8 +69494,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -62482,11 +69515,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -62503,7 +69536,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -62524,43 +69557,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62573,43 +69578,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62622,43 +69599,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62671,40 +69620,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -62720,36 +69687,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -62769,43 +69764,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62818,15 +69813,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -62839,26 +69862,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -62874,7 +69905,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -62888,7 +70246,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -62905,46 +70263,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -62958,7 +70281,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -62975,51 +70298,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -63028,12 +70314,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -63045,12 +70329,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -63066,11 +70496,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -63087,11 +70559,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -63108,11 +70580,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -63129,11 +70601,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -63150,30 +70622,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -63189,7 +71112,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -63210,15 +71133,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -63245,7 +71168,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -63257,28 +71194,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -63288,7 +71203,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -63302,7 +71217,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -63316,7 +71231,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -63337,97 +71252,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -63442,7 +71266,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -63459,11 +71283,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -63484,7 +71413,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -63507,19 +71436,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -63527,42 +71456,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -63573,34 +71516,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -63610,7 +71525,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -63638,15 +71553,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -63659,7 +71574,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -63680,62 +71595,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -63745,14 +71616,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -63766,18 +71637,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -63787,18 +71709,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -63818,89 +71803,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -63911,20 +71819,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -63934,237 +71828,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -64179,7 +71842,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -64196,53 +71859,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -64259,11 +71880,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -64280,11 +71901,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -64301,11 +71922,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -64322,11 +71943,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -64343,397 +71964,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -64741,13 +71982,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -64755,13 +71996,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -64769,13 +72010,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -64783,13 +72024,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -64797,13 +72038,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -64811,13 +72052,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -64825,64 +72066,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -64892,7 +72087,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -64906,7 +72101,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -64920,7 +72115,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -64934,7 +72129,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -64948,7 +72143,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -64962,7 +72157,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -64976,7 +72171,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -64990,7 +72185,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -65011,13 +72206,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -65025,80 +72220,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -65108,168 +72283,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -65282,71 +72297,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -65380,7 +72367,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -65401,77 +72430,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -65485,7 +72444,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -65499,7 +72458,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -65513,7 +72472,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -65530,81 +72489,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -65618,7 +72563,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -65635,61 +72580,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -65709,7 +72675,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -65725,11 +72691,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -65746,11 +72712,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -65767,12 +72733,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -65788,12 +72754,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -65809,12 +72775,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -65830,11 +72796,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -65851,84 +72817,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -65945,11 +72834,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -65966,15 +72855,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -65987,7 +72876,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -66006,7 +72895,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -66017,7 +72906,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -66028,8 +72917,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -66039,7 +72928,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -66050,8 +72939,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -66072,8 +72961,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -66094,8 +72983,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -66116,8 +73005,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -66138,8 +73027,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -66160,8 +73049,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -66182,8 +73071,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -66204,7 +73093,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -66219,15 +73284,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -66237,18 +73302,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -66259,18 +73324,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -66281,18 +73346,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -66303,18 +73368,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -66325,18 +73390,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -66347,18 +73412,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -66369,18 +73434,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -66391,18 +73456,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -66412,84 +73477,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -66502,7 +73621,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -66514,7 +73633,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -66526,7 +73645,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -66538,7 +73657,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66550,7 +73669,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -66562,7 +73681,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66574,7 +73693,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -66586,7 +73705,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66598,7 +73717,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -66610,7 +73729,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66622,7 +73741,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66634,7 +73753,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66646,7 +73765,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -66658,7 +73777,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -66670,7 +73789,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66682,7 +73801,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -66694,7 +73813,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -66706,7 +73825,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -66725,12 +73844,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -66746,7 +73865,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66767,7 +73886,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66788,12 +73907,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -66809,7 +73928,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66830,7 +73949,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -66851,16 +73970,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -66879,84 +73998,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -66966,7 +74019,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -66980,7 +74033,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -67001,7 +74054,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -67015,7 +74068,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -67036,12 +74089,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -67057,7 +74110,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67071,7 +74124,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -67085,7 +74138,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -67106,7 +74159,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -67127,7 +74180,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -67153,7 +74206,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -67169,11 +74222,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -67190,7 +74243,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67204,7 +74257,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67225,7 +74278,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -67246,7 +74299,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -67263,79 +74316,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -67372,7 +74362,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -67386,10 +74390,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -67405,11 +74411,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -67426,11 +74432,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -67447,7 +74453,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67468,7 +74474,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67489,7 +74495,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67510,12 +74516,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -67531,7 +74537,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67543,6 +74549,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -67552,28 +74570,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67590,16 +74587,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -67611,46 +74608,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -67664,7 +74675,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -67678,7 +74689,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -67695,11 +74706,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67716,11 +74727,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67734,7 +74745,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67748,7 +74759,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67762,7 +74773,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -67779,15 +74790,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -67804,7 +74836,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67825,7 +74857,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -67846,7 +74878,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -67867,11 +74899,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67881,11 +74913,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67895,11 +74927,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67909,11 +74941,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67923,11 +74955,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67937,11 +74969,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67951,11 +74983,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -67972,7 +75004,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -67986,7 +75018,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -68000,7 +75032,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -68014,7 +75046,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -68028,7 +75060,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -68042,7 +75074,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -68063,7 +75095,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -68077,7 +75109,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -68103,7 +75135,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -68119,12 +75151,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -68140,12 +75172,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -68161,12 +75193,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -68178,11 +75210,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -68199,154 +75231,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -68354,19 +75333,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -68381,7 +75354,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -68395,7 +75664,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -68409,7 +75678,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -68423,7 +75692,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -68440,17 +75709,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -68458,29 +75732,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -68489,17 +75830,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -68507,13 +75848,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -68521,13 +75862,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -68535,13 +75897,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -68552,63 +75914,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -68625,11 +75966,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -68643,10 +75984,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -68660,11 +76001,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -68678,7 +76082,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -68699,7 +76103,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -68720,24 +76124,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -68751,24 +76145,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -68778,11 +76162,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -68799,11 +76225,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -68820,78 +76288,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -68901,29 +76313,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -68936,8 +76348,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -68957,15 +76369,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -68978,8 +76404,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -68999,8 +76425,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -69011,8 +76534,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -69026,12 +76549,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -69051,8 +76657,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -69072,7 +76678,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -69089,11 +76737,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -69110,28 +76758,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -69140,7 +76767,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -69161,29 +76788,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69196,15 +76865,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69217,15 +76900,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69238,15 +76977,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69259,18 +77026,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -69280,29 +77061,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69315,8 +77110,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -69336,11 +77131,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -69357,7 +77152,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -69378,43 +77173,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69427,43 +77194,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69476,43 +77215,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69525,40 +77236,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -69574,36 +77303,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -69623,43 +77380,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69672,15 +77429,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -69693,26 +77478,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -69728,7 +77521,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -69742,7 +77862,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -69759,46 +77879,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -69812,7 +77897,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -69829,51 +77914,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -69882,12 +77930,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -69899,12 +77945,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -69920,11 +78112,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -69941,11 +78175,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -69962,11 +78196,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -69983,11 +78217,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -70004,30 +78238,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -70043,7 +78728,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -70064,15 +78749,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -70099,7 +78784,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -70111,28 +78810,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -70142,7 +78819,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -70156,7 +78833,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -70170,7 +78847,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -70191,97 +78868,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -70296,7 +78882,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -70313,11 +78899,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -70338,7 +79029,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -70361,19 +79052,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -70381,42 +79072,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -70427,34 +79132,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -70464,7 +79141,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -70492,15 +79169,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -70513,7 +79190,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -70534,62 +79211,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -70599,14 +79232,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -70620,18 +79253,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -70641,18 +79325,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -70672,89 +79419,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -70765,20 +79435,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -70788,237 +79444,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -71033,7 +79458,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -71050,53 +79475,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -71113,11 +79496,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -71134,11 +79517,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -71155,11 +79538,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -71176,11 +79559,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -71197,397 +79580,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -71595,13 +79598,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -71609,13 +79612,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -71623,13 +79626,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -71637,13 +79640,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -71651,13 +79654,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -71665,13 +79668,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -71679,64 +79682,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -71746,7 +79703,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -71760,7 +79717,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -71774,7 +79731,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -71788,7 +79745,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -71802,7 +79759,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -71816,7 +79773,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -71830,7 +79787,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -71844,7 +79801,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -71865,13 +79822,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -71879,80 +79836,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -71962,168 +79899,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -72136,71 +79913,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -72234,7 +79983,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -72255,77 +80046,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -72339,7 +80060,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -72353,7 +80074,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -72367,7 +80088,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -72384,81 +80105,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -72472,7 +80179,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -72489,61 +80196,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -72563,7 +80291,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -72579,11 +80307,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -72600,11 +80328,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -72621,12 +80349,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -72642,12 +80370,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -72663,12 +80391,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -72684,11 +80412,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -72705,84 +80433,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -72799,11 +80450,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -72820,15 +80471,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -72841,7 +80492,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -72860,7 +80511,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -72871,7 +80522,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -72882,8 +80533,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -72893,7 +80544,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -72904,8 +80555,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -72926,8 +80577,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -72948,8 +80599,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -72970,8 +80621,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -72992,8 +80643,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -73014,8 +80665,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -73036,8 +80687,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -73058,7 +80709,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -73073,15 +80900,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -73091,18 +80918,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -73113,18 +80940,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -73135,18 +80962,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -73157,18 +80984,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -73179,18 +81006,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -73201,18 +81028,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -73223,18 +81050,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -73245,18 +81072,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -73266,84 +81093,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -73356,7 +81237,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -73368,7 +81249,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -73380,7 +81261,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -73392,7 +81273,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73404,7 +81285,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -73416,7 +81297,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73428,7 +81309,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -73440,7 +81321,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73452,7 +81333,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -73464,7 +81345,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73476,7 +81357,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73488,7 +81369,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73500,7 +81381,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -73512,7 +81393,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -73524,7 +81405,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73536,7 +81417,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -73548,7 +81429,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -73560,7 +81441,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -73579,12 +81460,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -73600,7 +81481,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73621,7 +81502,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73642,12 +81523,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -73663,7 +81544,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73684,7 +81565,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73705,16 +81586,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -73733,84 +81614,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -73820,7 +81635,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -73834,7 +81649,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -73855,7 +81670,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -73869,7 +81684,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -73890,12 +81705,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -73911,7 +81726,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -73925,7 +81740,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -73939,7 +81754,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -73960,7 +81775,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -73981,7 +81796,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -74007,7 +81822,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -74023,11 +81838,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -74044,7 +81859,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -74058,7 +81873,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -74079,7 +81894,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -74100,7 +81915,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -74117,79 +81932,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -74226,7 +81978,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -74240,10 +82006,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -74259,11 +82027,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -74280,11 +82048,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -74301,7 +82069,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74322,7 +82090,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74343,7 +82111,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74364,12 +82132,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -74385,7 +82153,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74397,6 +82165,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -74406,28 +82186,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74444,16 +82203,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -74465,46 +82224,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -74518,7 +82291,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -74532,7 +82305,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -74549,11 +82322,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74570,11 +82343,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -74588,7 +82361,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -74602,7 +82375,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -74616,7 +82389,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -74633,15 +82406,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -74658,7 +82452,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74679,7 +82473,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -74700,7 +82494,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -74721,11 +82515,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74735,11 +82529,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74749,11 +82543,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74763,11 +82557,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74777,11 +82571,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74791,11 +82585,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74805,11 +82599,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -74826,7 +82620,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -74840,7 +82634,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -74854,7 +82648,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -74868,7 +82662,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -74882,7 +82676,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -74896,7 +82690,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -74917,7 +82711,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -74931,7 +82725,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -74957,7 +82751,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -74973,12 +82767,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -74994,12 +82788,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -75015,12 +82809,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -75032,11 +82826,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -75053,154 +82847,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -75208,19 +82949,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -75235,7 +82970,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -75249,7 +83280,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -75263,7 +83294,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -75277,7 +83308,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -75294,17 +83325,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -75312,29 +83348,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -75343,17 +83446,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -75361,13 +83464,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -75375,13 +83478,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -75389,13 +83513,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -75406,63 +83530,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -75479,11 +83582,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -75497,10 +83600,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -75514,11 +83617,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -75532,7 +83698,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -75553,7 +83719,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -75574,24 +83740,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -75605,24 +83761,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -75632,11 +83778,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -75653,11 +83841,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -75674,78 +83904,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -75755,29 +83929,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -75790,8 +83964,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -75811,15 +83985,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -75832,8 +84020,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -75853,8 +84041,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -75865,8 +84150,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -75880,12 +84165,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -75905,8 +84273,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -75926,7 +84294,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -75943,11 +84353,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -75964,28 +84374,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -75994,7 +84383,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -76015,29 +84404,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
-              "field_msb": 31,
+              "position_offset": 159,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 146,
-              "field_name": "hdr.inner_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 137,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76050,15 +84481,29 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 70,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 51,
+              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76071,15 +84516,71 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 99,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.version",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 232,
+              "field_name": "hdr.ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 219,
+              "field_name": "hdr.ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 224,
+              "field_name": "hdr.ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 238,
+              "field_name": "hdr.ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76092,15 +84593,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 57,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
+              "position_offset": 158,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 151,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76113,18 +84642,32 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 14,
-              "field_name": "fabric_metadata.ipv4_dst_addr",
-              "field_msb": 31,
+              "position_offset": 17,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 7,
+              "live_end": 8,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -76134,29 +84677,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 33,
-              "field_name": "fabric_metadata.next_id",
-              "field_msb": 31,
+              "position_offset": 240,
+              "field_name": "hdr.ipv4.ttl",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 11,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 0,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 160,
-              "field_name": "hdr.inner_ipv4.src_addr",
-              "field_msb": 31,
+              "position_offset": 233,
+              "field_name": "hdr.ipv4.protocol",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 228,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76169,8 +84726,8 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
-              "field_name": "hdr.ipv4.src_addr",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -76190,11 +84747,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 113,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 234,
+              "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -76211,7 +84768,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 18,
+              "position_offset": 22,
               "field_name": "fabric_metadata.ipv4_src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -76232,43 +84789,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 156,
-              "field_name": "hdr.inner_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 138,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 151,
-              "field_name": "hdr.inner_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 152,
-              "field_name": "hdr.inner_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76281,43 +84810,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 216,
-              "field_name": "hdr.ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 220,
+              "field_name": "hdr.ipv4.dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 211,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 212,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76330,43 +84831,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 109,
-              "field_name": "hdr.gtpu_ipv4.identification",
-              "field_msb": 15,
+              "position_offset": 18,
+              "field_name": "fabric_metadata.ipv4_dst_addr",
+              "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
+              "live_start": "parser",
+              "live_end": 11,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 4,
               "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.flags",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 105,
-              "field_name": "hdr.gtpu_ipv4.frag_offset",
-              "field_msb": 12,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76379,40 +84852,58 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 166,
-              "field_name": "hdr.inner_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 167,
+              "field_name": "hdr.inner_tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 159,
-              "field_name": "hdr.inner_ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 171,
+              "field_name": "hdr.inner_tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 154,
-              "field_name": "hdr.inner_ipv4.hdr_checksum",
+              "position_offset": 180,
+              "field_name": "hdr.inner_tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -76428,36 +84919,64 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 226,
-              "field_name": "hdr.ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 258,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
-              "phv_lsb": 24,
+              "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 219,
-              "field_name": "hdr.ipv4.protocol",
-              "field_msb": 7,
+              "position_offset": 262,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 23,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 261,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 257,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 21,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 214,
-              "field_name": "hdr.ipv4.hdr_checksum",
+              "position_offset": 271,
+              "field_name": "hdr.tcp.window",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -76477,43 +84996,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 119,
-              "field_name": "hdr.gtpu_ipv4.ttl",
-              "field_msb": 7,
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 112,
-              "field_name": "hdr.gtpu_ipv4.protocol",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 107,
-              "field_name": "hdr.gtpu_ipv4.hdr_checksum",
-              "field_msb": 15,
+              "position_offset": 143,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 144,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76526,15 +85045,43 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 281,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 31,
+              "position_offset": 230,
+              "field_name": "hdr.ipv4.identification",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 225,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 226,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76547,26 +85094,34 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
-              "field_name": "hdr.inner_udp.sport",
-              "field_msb": 15,
+              "position_offset": 124,
+              "field_name": "hdr.inner_icmp.icmp_type",
+              "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.inner_icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 170,
-              "field_name": "hdr.inner_udp.dport",
+              "position_offset": 121,
+              "field_name": "hdr.inner_icmp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -76582,7 +85137,334 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 265,
+              "position_offset": 267,
+              "field_name": "hdr.tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 259,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 188,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 184,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.tcp.dport",
+                "hdr.tcp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 107,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 105,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 34,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 176,
+              "field_name": "hdr.inner_tcp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 168,
+              "field_name": "hdr.inner_tcp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 35,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 178,
+              "field_name": "hdr.inner_tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 36,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 255,
+              "field_name": "hdr.tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 269,
+              "field_name": "hdr.tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 186,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 182,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 111,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.urgent_ptr",
+                "hdr.tcp.checksum",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 37,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 279,
               "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -76596,7 +85478,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 261,
+              "position_offset": 275,
               "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
@@ -76613,46 +85495,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 34,
+          "phv_number": 38,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 127,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 35,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 263,
+              "position_offset": 277,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -76666,7 +85513,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 259,
+              "position_offset": 273,
               "field_name": "hdr.udp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
@@ -76683,51 +85530,14 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 36,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 172,
-              "field_name": "hdr.inner_udp.len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 168,
-              "field_name": "hdr.inner_udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 37,
+          "phv_number": 39,
           "container_type": "normal",
           "records": [
             {
               "position_offset": 125,
-              "field_name": "hdr.gtpu_udp.len",
+              "field_name": "hdr.inner_icmp.identifier",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
@@ -76736,12 +85546,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 121,
-              "field_name": "hdr.gtpu_udp.checksum",
+              "position_offset": 127,
+              "field_name": "hdr.inner_icmp.sequence_number",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -76753,12 +85561,158 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 38,
+          "phv_number": 40,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 93,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 172,
+              "field_name": "hdr.inner_tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 41,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 263,
+              "field_name": "hdr.tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 42,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 43,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 251,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 113,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.ack_no" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 44,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 45,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 129,
+              "field_name": "hdr.inner_icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "mutually_exclusive_with": [],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 46,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 295,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
@@ -76774,11 +85728,53 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 39,
+          "phv_number": 47,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 53,
+              "position_offset": 66,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 48,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 49,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 58,
               "field_name": "fabric_metadata.spgw.teid",
               "field_msb": 31,
               "field_lsb": 0,
@@ -76795,11 +85791,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 40,
+          "phv_number": 50,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
+              "position_offset": 43,
               "field_name": "fabric_metadata.spgw.ctr_id",
               "field_msb": 31,
               "field_lsb": 0,
@@ -76816,11 +85812,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 41,
+          "phv_number": 51,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -76837,11 +85833,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 42,
+          "phv_number": 52,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -76858,30 +85854,481 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 44,
+          "phv_number": 53,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
-              "field_name": "fabric_metadata.spgw.direction",
-              "field_msb": 1,
+              "position_offset": 100,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 54,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 24,
+              "phv_lsb": 17,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 300,
+                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 315,
+                  "header_name": "hdr.packet_out.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 302,
+                  "header_name": "hdr.ethernet.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 318,
+                  "header_name": "hdr.vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 4,
+                  "position_offset": 309,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 301,
+                  "header_name": "hdr.eth_type.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 314,
+                  "header_name": "hdr.mpls.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 316,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 8,
+              "phv_lsb": 8,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 8,
+                  "position_offset": 311,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 9,
+              "phv_lsb": 9,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 9,
+                  "position_offset": 310,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 312,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 317,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 303,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 308,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 304,
+                  "header_name": "hdr.icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 307,
+                  "header_name": "hdr.inner_tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": 1,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 305,
+                  "header_name": "hdr.inner_icmp.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 56,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 11,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 23,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.far_id",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": 4,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 25,
+              "field_width": 4,
+              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 45,
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.src_iface",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 57,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 47,
               "field_name": "fabric_metadata.spgw.far_id",
               "field_msb": 31,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 23,
@@ -76897,7 +86344,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 290,
               "field_name": "ig_intr_md_for_dprsr.mirror_type",
               "field_msb": 2,
               "field_lsb": 0,
@@ -76918,15 +86365,15 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 287,
-              "field_name": "spgw_normalizer_hasReturned",
-              "field_msb": 0,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 3,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -76953,7 +86400,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 275,
+              "position_offset": 12,
+              "field_name": "fabric_metadata.inner_l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 289,
               "field_name": "ig_intr_md_for_dprsr.drop_ctl",
               "field_msb": 2,
               "field_lsb": 0,
@@ -76965,28 +86426,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 305,
-                  "header_name": "hdr.udp.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 8
@@ -76996,7 +86435,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 284,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -77010,7 +86449,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 267,
+              "position_offset": 281,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -77024,7 +86463,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -77045,97 +86484,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 68,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 65,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 37,
-              "field_name": "fabric_metadata.skip_forwarding",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 7,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 44,
-              "field_name": "fabric_metadata.spgw.far_dropped",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 5,
-              "live_end": 6,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 9,
-              "field_lsb": 8,
-              "live_start": 7,
-              "live_end": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 2,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 69,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 3,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_3",
               "field_msb": 3,
@@ -77150,7 +86498,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 8,
@@ -77167,11 +86515,116 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 69,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 75,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "compiler_generated_meta.bridged_metadata.__pad_0",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 41,
+              "field_name": "fabric_metadata.skip_forwarding",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_decap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 70,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 271,
+              "position_offset": 285,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -77192,7 +86645,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 66,
+              "position_offset": 73,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -77215,19 +86668,19 @@
             {
               "position_offset": 1,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_1",
-              "field_msb": 3,
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
-              "phv_lsb": 4,
+              "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 10,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.source",
               "field_msb": 0,
               "field_lsb": 0,
@@ -77235,42 +86688,56 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 55,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 54,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 9,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 51,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 23,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
               "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 22,
-              "field_name": "fabric_metadata.is_controller_packet_out",
+              "position_offset": 56,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
@@ -77281,34 +86748,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 52,
-              "field_name": "fabric_metadata.spgw.pdr_hit",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 286,
-              "field_name": "spgw_ingress_hasReturned",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 4,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -77318,7 +86757,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -77346,15 +86785,15 @@
               "is_pov": false
             },
             {
-              "position_offset": 9,
-              "field_name": "fabric_metadata.fwd_type",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": 2,
-              "live_end": 7,
+              "position_offset": 76,
+              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
+              "field_msb": 9,
+              "field_lsb": 8,
+              "live_start": 7,
+              "live_end": 8,
               "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
+              "field_width": 2,
+              "phv_msb": 1,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -77367,7 +86806,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 32,
+              "position_offset": 36,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -77388,62 +86827,18 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
-              "field_name": "fabric_metadata.skip_next",
-              "field_msb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 10,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 296,
-                  "header_name": "hdr.inner_udp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 293,
-                  "header_name": "hdr.gtpu_udp.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -77453,14 +86848,14 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
-              "field_name": "fabric_metadata.ip_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
+              "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 11,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 1,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -77474,18 +86869,69 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 69,
-              "field_name": "forwarding_routing_v4__metadata.forwarding_routing_v4_partition_index",
-              "field_msb": 7,
+              "position_offset": 42,
+              "field_name": "fabric_metadata.skip_next",
+              "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 7,
-              "live_end": 8,
+              "live_start": "parser",
+              "live_end": 10,
               "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 313,
+                  "header_name": "hdr.ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 78,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 306,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
             }
           ],
           "word_bit_width": 8
@@ -77495,18 +86941,81 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 235,
+              "position_offset": 249,
               "field_name": "hdr.packet_out.egress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 7,
               "is_compiler_generated": false,
               "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 293,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 8,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 291,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 10,
+              "field_name": "fabric_metadata.inner_l4_dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 3,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             },
             {
               "position_offset": 6,
@@ -77526,89 +87035,12 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 129,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 279,
-              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
-              "field_msb": 8,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 8,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 130,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 277,
-              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 131,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 132,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 131,
-              "field_name": "hdr.icmp.icmp_code",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 132,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 49,
-              "field_name": "fabric_metadata.spgw.ipv4_len",
+              "position_offset": 28,
+              "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -77619,20 +87051,6 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 164,
-              "field_name": "hdr.inner_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -77642,237 +87060,6 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 224,
-              "field_name": "hdr.ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 134,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 117,
-              "field_name": "hdr.gtpu_ipv4.total_len",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 135,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 167,
-              "field_name": "hdr.inner_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 158,
-              "field_name": "hdr.inner_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 145,
-              "field_name": "hdr.inner_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 150,
-              "field_name": "hdr.inner_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 136,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 227,
-              "field_name": "hdr.ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 218,
-              "field_name": "hdr.ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 137,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 120,
-              "field_name": "hdr.gtpu_ipv4.version",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 111,
-              "field_name": "hdr.gtpu_ipv4.ihl",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 11,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 98,
-              "field_name": "hdr.gtpu_ipv4.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 103,
-              "field_name": "hdr.gtpu_ipv4.ecn",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 138,
-          "container_type": "normal",
-          "records": [
-            {
               "position_offset": 2,
               "field_name": "compiler_generated_meta.bridged_metadata.__pad_2",
               "field_msb": 6,
@@ -77887,7 +87074,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 273,
+              "position_offset": 287,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -77904,53 +87091,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 139,
+          "phv_number": 134,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.l4_dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 140,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 26,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 141,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 11,
+              "position_offset": 15,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -77967,11 +87112,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 142,
+          "phv_number": 135,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 28,
+              "position_offset": 32,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -77988,11 +87133,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 143,
+          "phv_number": 136,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 73,
+              "position_offset": 80,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -78009,11 +87154,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 172,
+          "phv_number": 137,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 79,
+              "position_offset": 86,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -78030,11 +87175,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 173,
+          "phv_number": 138,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 71,
+              "position_offset": 78,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -78051,397 +87196,17 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 174,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 288,
-                  "header_name": "compiler_generated_meta.bridged_metadata.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 303,
-                  "header_name": "hdr.packet_out.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 2,
-                  "position_offset": 290,
-                  "header_name": "hdr.ethernet.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 306,
-                  "header_name": "hdr.vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 297,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 289,
-                  "header_name": "hdr.eth_type.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 6,
-              "phv_lsb": 6,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 6,
-                  "position_offset": 302,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 7,
-                  "position_offset": 304,
-                  "header_name": "hdr.tcp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 8,
-              "phv_lsb": 8,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 8,
-                  "position_offset": 299,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 9,
-              "phv_lsb": 9,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 9,
-                  "position_offset": 298,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 10,
-                  "position_offset": 300,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 11,
-                  "position_offset": 291,
-                  "header_name": "hdr.gtpu.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 12,
-                  "position_offset": 294,
-                  "header_name": "hdr.icmp.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 13,
-                  "position_offset": 292,
-                  "header_name": "hdr.gtpu_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 175,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.far_id",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 9,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 301,
-                  "header_name": "hdr.ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 295,
-                  "header_name": "hdr.inner_ipv4.$valid",
-                  "hidden": false
-                }
-              ]
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 260,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 195,
+              "position_offset": 209,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 30,
@@ -78449,13 +87214,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 190,
+              "position_offset": 204,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 29,
               "phv_lsb": 28,
@@ -78463,13 +87228,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 182,
+              "position_offset": 196,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
               "phv_lsb": 27,
@@ -78477,13 +87242,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 183,
+              "position_offset": 197,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 26,
               "phv_lsb": 26,
@@ -78491,13 +87256,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 191,
+              "position_offset": 205,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 25,
               "phv_lsb": 21,
@@ -78505,13 +87270,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 184,
+              "position_offset": 198,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 20,
               "phv_lsb": 16,
@@ -78519,13 +87284,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 189,
+              "position_offset": 203,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 15,
               "phv_lsb": 8,
@@ -78533,64 +87298,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 194,
+              "position_offset": 208,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 133,
-              "field_name": "hdr.icmp.identifier",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 135,
-              "field_name": "hdr.icmp.sequence_number",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.total_hop_cnt",
-                "hdr.int_header.max_hop_cnt",
-                "hdr.int_header.ins_cnt",
-                "hdr.int_header.rsvd1",
-                "hdr.int_header.e",
-                "hdr.int_header.c",
-                "hdr.int_header.rep",
-                "hdr.int_header.ver"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -78600,7 +87319,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 97,
+              "position_offset": 104,
               "field_name": "hdr.gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
@@ -78614,7 +87333,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 90,
+              "position_offset": 97,
               "field_name": "hdr.gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
@@ -78628,7 +87347,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 92,
+              "position_offset": 99,
               "field_name": "hdr.gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
@@ -78642,7 +87361,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 85,
+              "position_offset": 92,
               "field_name": "hdr.gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -78656,7 +87375,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 91,
+              "position_offset": 98,
               "field_name": "hdr.gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -78670,7 +87389,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 89,
+              "position_offset": 96,
               "field_name": "hdr.gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
@@ -78684,7 +87403,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 88,
+              "position_offset": 95,
               "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
@@ -78698,7 +87417,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 86,
+              "position_offset": 93,
               "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
@@ -78719,13 +87438,13 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
-              "field_name": "hdr.tcp.data_offset",
+              "position_offset": 199,
+              "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
               "phv_lsb": 28,
@@ -78733,80 +87452,60 @@
               "is_pov": false
             },
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 200,
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
-              "phv_lsb": 25,
+              "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 247,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 201,
+              "field_name": "hdr.int_header.instruction_mask_0811",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 24,
-              "phv_lsb": 22,
+              "phv_msb": 23,
+              "phv_lsb": 20,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
+              "position_offset": 202,
+              "field_name": "hdr.int_header.instruction_mask_1215",
+              "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 21,
+              "phv_msb": 19,
               "phv_lsb": 16,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 257,
-              "field_name": "hdr.tcp.window",
+              "position_offset": 206,
+              "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 32
@@ -78816,168 +87515,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 185,
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 28,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 186,
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 27,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 187,
-              "field_name": "hdr.int_header.instruction_mask_0811",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 23,
-              "phv_lsb": 20,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 188,
-              "field_name": "hdr.int_header.instruction_mask_1215",
-              "field_msb": 3,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 1,
-              "phv_msb": 19,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 192,
-              "field_name": "hdr.int_header.rsvd2",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 137,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.int_header.rsvd2",
-                "hdr.int_header.instruction_mask_1215",
-                "hdr.int_header.instruction_mask_0811",
-                "hdr.int_header.instruction_mask_0407",
-                "hdr.int_header.instruction_mask_0003"
-              ],
-              "field_width": 8,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 264,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 203,
-              "field_name": "hdr.intl4_tail.next_proto",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 31,
-              "phv_lsb": 24,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 200,
-              "field_name": "hdr.intl4_tail.dest_port",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 23,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 204,
-              "field_name": "hdr.intl4_tail.padding",
-              "field_msb": 1,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 6,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 202,
-              "field_name": "hdr.intl4_tail.dscp",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 5,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 265,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 253,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 191,
+              "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -78990,71 +87529,43 @@
               "is_pov": false
             },
             {
-              "position_offset": 245,
-              "field_name": "hdr.tcp.dport",
-              "field_msb": 15,
+              "position_offset": 193,
+              "field_name": "hdr.inner_vlan_tag.pri",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 2,
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 266,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 241,
-              "field_name": "hdr.tcp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 255,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 190,
+              "field_name": "hdr.inner_vlan_tag.cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 194,
+              "field_name": "hdr.inner_vlan_tag.vlan_id",
+              "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 267,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 249,
-              "field_name": "hdr.tcp.seq_no",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "phv_msb": 11,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -79088,7 +87599,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 285,
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 282,
+              "field_name": "hdr.vlan_tag.eth_type",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 295,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 299,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -79109,77 +87662,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 179,
-              "field_name": "hdr.inner_vlan_tag.pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 13,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 176,
-              "field_name": "hdr.inner_vlan_tag.cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 12,
-              "phv_lsb": 12,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 180,
-              "field_name": "hdr.inner_vlan_tag.vlan_id",
-              "field_msb": 11,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 11,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 327,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 177,
-              "field_name": "hdr.inner_vlan_tag.eth_type",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 328,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 229,
+              "position_offset": 243,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -79193,7 +87676,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 233,
+              "position_offset": 247,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -79207,7 +87690,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 228,
+              "position_offset": 242,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -79221,7 +87704,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 234,
+              "position_offset": 248,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -79238,81 +87721,67 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 327,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 243,
+              "field_name": "hdr.mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 3,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 211,
+              "field_name": "hdr.intl4_shim.len_words",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 213,
+              "field_name": "hdr.intl4_shim.rsvd2",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 329,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 229,
-              "field_name": "hdr.mpls.label",
-              "field_msb": 19,
-              "field_lsb": 4,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 3,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 330,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 197,
-              "field_name": "hdr.intl4_shim.len_words",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 15,
-              "phv_lsb": 8,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 199,
-              "field_name": "hdr.intl4_shim.rsvd2",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.checksum" ],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 129,
-              "field_name": "hdr.icmp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.intl4_shim.rsvd2", "hdr.intl4_shim.len_words" ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 331,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 196,
+              "position_offset": 210,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -79326,7 +87795,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 198,
+              "position_offset": 212,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -79343,61 +87812,82 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 332,
+          "phv_number": 330,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 333,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 237,
-              "field_name": "hdr.tcp.ack_no",
-              "field_msb": 31,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 334,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 268,
-              "field_name": "hdr.vlan_tag.eth_type",
-              "field_msb": 15,
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 218,
+              "field_name": "hdr.intl4_tail.padding",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 216,
+              "field_name": "hdr.intl4_tail.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 217,
+              "field_name": "hdr.intl4_tail.next_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 214,
+              "field_name": "hdr.intl4_tail.dest_port",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -79417,7 +87907,7 @@
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -79433,11 +87923,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 164,
+              "position_offset": 200,
               "field_name": "hdr.int_hop_latency.hop_latency",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -79454,11 +87944,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 142,
+              "position_offset": 178,
               "field_name": "hdr.int_egress_tstamp.egress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -79475,12 +87965,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 13,
+              "position_offset": 14,
               "field_name": "fabric_metadata.int_meta.eg_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": 0,
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -79496,12 +87986,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
+              "position_offset": 319,
               "field_name": "ig_intr_md_from_prsr.global_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 31,
@@ -79517,12 +88007,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 46,
-              "field_name": "fabric_metadata.spgw.teid",
+              "position_offset": 18,
+              "field_name": "fabric_metadata.int_meta.ig_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 4,
               "phv_msb": 31,
@@ -79538,11 +88028,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 84,
-              "field_name": "hdr.gtpu.teid",
+              "position_offset": 204,
+              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -79559,84 +88049,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 17,
-              "field_name": "fabric_metadata.int_meta.ig_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 1,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 24,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 168,
-              "field_name": "hdr.int_ingress_tstamp.ingress_tstamp",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "live_start": 1,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 25,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 118,
-              "field_name": "hdr.gtpu_udp.sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 31,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 114,
-              "field_name": "hdr.gtpu_udp.dport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 26,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 214,
+              "position_offset": 250,
               "field_name": "hdr.ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -79653,11 +88066,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 27,
+          "phv_number": 24,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 200,
+              "position_offset": 236,
               "field_name": "hdr.ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 0,
@@ -79674,15 +88087,15 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 28,
+          "phv_number": 25,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 186,
+              "position_offset": 222,
               "field_name": "hdr.int_switch_id.switch_id",
               "field_msb": 31,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 4,
@@ -79695,7 +88108,7 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 29,
+          "phv_number": 26,
           "container_type": "normal",
           "records": [
             {
@@ -79714,7 +88127,7 @@
               "pov_headers": [
                 {
                   "bit_index": 0,
-                  "position_offset": 281,
+                  "position_offset": 330,
                   "header_name": "hdr.gtpu_ipv4.$valid",
                   "hidden": false
                 }
@@ -79725,7 +88138,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -79736,8 +88149,8 @@
               "pov_headers": [
                 {
                   "bit_index": 1,
-                  "position_offset": 279,
-                  "header_name": "hdr.ethernet.$valid",
+                  "position_offset": 331,
+                  "header_name": "hdr.gtpu_udp.$valid",
                   "hidden": false
                 }
               ]
@@ -79747,7 +88160,7 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
@@ -79758,8 +88171,8 @@
               "pov_headers": [
                 {
                   "bit_index": 2,
-                  "position_offset": 301,
-                  "header_name": "hdr.vlan_tag.$valid",
+                  "position_offset": 349,
+                  "header_name": "hdr.outer_gtpu.$valid",
                   "hidden": false
                 }
               ]
@@ -79780,8 +88193,8 @@
               "pov_headers": [
                 {
                   "bit_index": 3,
-                  "position_offset": 284,
-                  "header_name": "hdr.inner_vlan_tag.$valid",
+                  "position_offset": 328,
+                  "header_name": "hdr.ethernet.$valid",
                   "hidden": false
                 }
               ]
@@ -79802,8 +88215,8 @@
               "pov_headers": [
                 {
                   "bit_index": 4,
-                  "position_offset": 278,
-                  "header_name": "hdr.eth_type.$valid",
+                  "position_offset": 353,
+                  "header_name": "hdr.vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -79824,8 +88237,8 @@
               "pov_headers": [
                 {
                   "bit_index": 5,
-                  "position_offset": 296,
-                  "header_name": "hdr.ipv4.$valid",
+                  "position_offset": 335,
+                  "header_name": "hdr.inner_vlan_tag.$valid",
                   "hidden": false
                 }
               ]
@@ -79846,8 +88259,8 @@
               "pov_headers": [
                 {
                   "bit_index": 6,
-                  "position_offset": 299,
-                  "header_name": "hdr.tcp.$valid",
+                  "position_offset": 327,
+                  "header_name": "hdr.eth_type.$valid",
                   "hidden": false
                 }
               ]
@@ -79868,8 +88281,8 @@
               "pov_headers": [
                 {
                   "bit_index": 7,
-                  "position_offset": 300,
-                  "header_name": "hdr.udp.$valid",
+                  "position_offset": 348,
+                  "header_name": "hdr.mpls.$valid",
                   "hidden": false
                 }
               ]
@@ -79890,8 +88303,8 @@
               "pov_headers": [
                 {
                   "bit_index": 8,
-                  "position_offset": 280,
-                  "header_name": "hdr.gtpu.$valid",
+                  "position_offset": 347,
+                  "header_name": "hdr.ipv4.$valid",
                   "hidden": false
                 }
               ]
@@ -79912,7 +88325,183 @@
               "pov_headers": [
                 {
                   "bit_index": 9,
-                  "position_offset": 283,
+                  "position_offset": 351,
+                  "header_name": "hdr.tcp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 10,
+              "phv_lsb": 10,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 10,
+                  "position_offset": 345,
+                  "header_name": "hdr.intl4_shim.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 11,
+              "phv_lsb": 11,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 11,
+                  "position_offset": 338,
+                  "header_name": "hdr.int_header.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 12,
+                  "position_offset": 346,
+                  "header_name": "hdr.intl4_tail.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 13,
+              "phv_lsb": 13,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 13,
+                  "position_offset": 352,
+                  "header_name": "hdr.udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 14,
+              "phv_lsb": 14,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 14,
+                  "position_offset": 329,
+                  "header_name": "hdr.gtpu.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 15,
+              "phv_lsb": 15,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 15,
+                  "position_offset": 333,
+                  "header_name": "hdr.inner_ipv4.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 16,
+              "phv_lsb": 16,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 16,
+                  "position_offset": 334,
+                  "header_name": "hdr.inner_udp.$valid",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 0,
+              "phv_msb": 17,
+              "phv_lsb": 17,
+              "is_compiler_generated": true,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 17,
+                  "position_offset": 332,
                   "header_name": "hdr.icmp.$valid",
                   "hidden": false
                 }
@@ -79927,15 +88516,15 @@
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 10,
-              "phv_lsb": 10,
+              "phv_msb": 18,
+              "phv_lsb": 18,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 10,
-                  "position_offset": 282,
-                  "header_name": "hdr.gtpu_udp.$valid",
+                  "bit_index": 18,
+                  "position_offset": 350,
+                  "header_name": "hdr.packet_in.$valid",
                   "hidden": false
                 }
               ]
@@ -79945,18 +88534,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 11,
-              "phv_lsb": 11,
+              "phv_msb": 19,
+              "phv_lsb": 19,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 11,
-                  "position_offset": 293,
+                  "bit_index": 19,
+                  "position_offset": 344,
                   "header_name": "hdr.int_switch_id.$valid",
                   "hidden": false
                 }
@@ -79967,18 +88556,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 12,
-              "phv_lsb": 12,
+              "phv_msb": 20,
+              "phv_lsb": 20,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 12,
-                  "position_offset": 290,
+                  "bit_index": 20,
+                  "position_offset": 341,
                   "header_name": "hdr.int_port_ids.$valid",
                   "hidden": false
                 }
@@ -79989,18 +88578,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 13,
-              "phv_lsb": 13,
+              "phv_msb": 21,
+              "phv_lsb": 21,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 13,
-                  "position_offset": 289,
+                  "bit_index": 21,
+                  "position_offset": 340,
                   "header_name": "hdr.int_ingress_tstamp.$valid",
                   "hidden": false
                 }
@@ -80011,18 +88600,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 14,
-              "phv_lsb": 14,
+              "phv_msb": 22,
+              "phv_lsb": 22,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 14,
-                  "position_offset": 285,
+                  "bit_index": 22,
+                  "position_offset": 336,
                   "header_name": "hdr.int_egress_tstamp.$valid",
                   "hidden": false
                 }
@@ -80033,18 +88622,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 15,
-              "phv_lsb": 15,
+              "phv_msb": 23,
+              "phv_lsb": 23,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 15,
-                  "position_offset": 288,
+                  "bit_index": 23,
+                  "position_offset": 339,
                   "header_name": "hdr.int_hop_latency.$valid",
                   "hidden": false
                 }
@@ -80055,18 +88644,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 3,
+              "live_start": 4,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 16,
-              "phv_lsb": 16,
+              "phv_msb": 24,
+              "phv_lsb": 24,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 16,
-                  "position_offset": 292,
+                  "bit_index": 24,
+                  "position_offset": 343,
                   "header_name": "hdr.int_q_occupancy.$valid",
                   "hidden": false
                 }
@@ -80077,18 +88666,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 17,
-              "phv_lsb": 17,
+              "phv_msb": 25,
+              "phv_lsb": 25,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 17,
-                  "position_offset": 291,
+                  "bit_index": 25,
+                  "position_offset": 342,
                   "header_name": "hdr.int_q_congestion.$valid",
                   "hidden": false
                 }
@@ -80099,18 +88688,18 @@
               "field_name": "POV",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": 4,
+              "live_start": 5,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 0,
-              "phv_msb": 18,
-              "phv_lsb": 18,
+              "phv_msb": 26,
+              "phv_lsb": 26,
               "is_compiler_generated": true,
               "is_pov": true,
               "pov_headers": [
                 {
-                  "bit_index": 18,
-                  "position_offset": 286,
+                  "bit_index": 26,
+                  "position_offset": 337,
                   "header_name": "hdr.int_egress_tx_util.$valid",
                   "hidden": false
                 }
@@ -80120,84 +88709,138 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 30,
+          "phv_number": 27,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 270,
-              "field_name": "ig_intr_md_from_prsr.global_tstamp",
-              "field_msb": 47,
-              "field_lsb": 32,
+              "position_offset": 40,
+              "field_name": "fabric_metadata.spgw.ctr_id",
+              "field_msb": 31,
+              "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 0,
               "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 17,
-              "phv_lsb": 2,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 0,
-                  "position_offset": 297,
-                  "header_name": "hdr.mpls.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": 0,
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 1,
-                  "position_offset": 298,
-                  "header_name": "hdr.packet_in.$valid",
-                  "hidden": false
-                }
-              ]
             }
           ],
           "word_bit_width": 32
         },
         {
-          "phv_number": 31,
+          "phv_number": 28,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 39,
-              "field_name": "fabric_metadata.spgw.ctr_id",
-              "field_msb": 31,
+              "position_offset": 33,
+              "field_name": "fabric_metadata.l4_sport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 1,
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 29,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 13,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "fabric_metadata.spgw.skip_spgw",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "fabric_metadata.spgw.needs_gtpu_encap",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 47,
+              "field_name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 25,
+              "field_name": "fabric_metadata.int_meta.source",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 1,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 30,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 319,
+              "field_name": "ig_intr_md_from_prsr.global_tstamp",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -80210,7 +88853,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 89,
+              "position_offset": 94,
               "field_name": "hdr.gtpu_ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -80222,7 +88865,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 94,
+              "position_offset": 99,
               "field_name": "hdr.gtpu_ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -80234,7 +88877,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 95,
+              "position_offset": 100,
               "field_name": "hdr.gtpu_ipv4.flags",
               "field_msb": 2,
               "field_lsb": 0,
@@ -80246,7 +88889,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80258,7 +88901,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 96,
+              "position_offset": 101,
               "field_name": "hdr.gtpu_ipv4.frag_offset",
               "field_msb": 12,
               "field_lsb": 8,
@@ -80270,7 +88913,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80282,7 +88925,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 98,
+              "position_offset": 103,
               "field_name": "hdr.gtpu_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -80294,7 +88937,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80306,7 +88949,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 112,
+              "position_offset": 117,
               "field_name": "hdr.gtpu_udp.checksum",
               "field_msb": 15,
               "field_lsb": 8,
@@ -80318,7 +88961,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 181,
+              "position_offset": 217,
               "field_name": "hdr.int_q_occupancy.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80330,7 +88973,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 180,
+              "position_offset": 216,
               "field_name": "hdr.int_q_congestion.q_id",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80342,7 +88985,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80354,7 +88997,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 15,
               "field_lsb": 8,
@@ -80366,7 +89009,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 176,
+              "position_offset": 212,
               "field_name": "hdr.int_q_congestion.q_congestion",
               "field_msb": 23,
               "field_lsb": 16,
@@ -80378,7 +89021,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80390,7 +89033,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 15,
               "field_lsb": 8,
@@ -80402,7 +89045,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 23,
               "field_lsb": 16,
@@ -80414,7 +89057,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 146,
+              "position_offset": 182,
               "field_name": "hdr.int_egress_tx_util.egress_port_tx_util",
               "field_msb": 31,
               "field_lsb": 24,
@@ -80433,12 +89076,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 38,
+              "position_offset": 39,
               "field_name": "fabric_metadata.mpls_ttl",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -80454,7 +89097,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 228,
+              "position_offset": 264,
               "field_name": "hdr.mpls.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80475,7 +89118,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 191,
+              "position_offset": 227,
               "field_name": "hdr.intl4_shim.len_words",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80496,12 +89139,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 23,
+              "position_offset": 24,
               "field_name": "fabric_metadata.int_meta.new_words",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 7,
@@ -80517,7 +89160,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 220,
+              "position_offset": 256,
               "field_name": "hdr.ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80538,7 +89181,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 162,
+              "position_offset": 198,
               "field_name": "hdr.int_header.total_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80559,16 +89202,16 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 25,
+              "position_offset": 26,
               "field_name": "fabric_metadata.int_meta.transit",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 2,
+              "live_end": 3,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 6,
-              "phv_lsb": 6,
+              "phv_msb": 3,
+              "phv_lsb": 3,
               "is_compiler_generated": false,
               "is_pov": false
             },
@@ -80587,84 +89230,18 @@
               "is_pov": false
             },
             {
-              "position_offset": 277,
+              "position_offset": 326,
               "field_name": "process_int_main_process_int_transit_hasReturned",
               "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 3,
+              "live_end": 4,
               "mutually_exclusive_with": [],
               "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 7,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 3,
-                  "position_offset": 294,
-                  "header_name": "hdr.intl4_shim.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
               "phv_msb": 4,
               "phv_lsb": 4,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 4,
-                  "position_offset": 287,
-                  "header_name": "hdr.int_header.$valid",
-                  "hidden": false
-                }
-              ]
-            },
-            {
-              "position_offset": 0,
-              "field_name": "POV",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 0,
-              "phv_msb": 5,
-              "phv_lsb": 5,
-              "is_compiler_generated": true,
-              "is_pov": true,
-              "pov_headers": [
-                {
-                  "bit_index": 5,
-                  "position_offset": 295,
-                  "header_name": "hdr.intl4_tail.$valid",
-                  "hidden": false
-                }
-              ]
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 8
@@ -80674,7 +89251,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 199,
+              "position_offset": 235,
               "field_name": "hdr.ipv4.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -80688,7 +89265,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 204,
+              "position_offset": 240,
               "field_name": "hdr.ipv4.ecn",
               "field_msb": 1,
               "field_lsb": 0,
@@ -80709,7 +89286,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 198,
+              "position_offset": 234,
               "field_name": "hdr.intl4_tail.padding",
               "field_msb": 1,
               "field_lsb": 0,
@@ -80723,7 +89300,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 196,
+              "position_offset": 232,
               "field_name": "hdr.intl4_tail.dscp",
               "field_msb": 5,
               "field_lsb": 0,
@@ -80744,12 +89321,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 3,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -80765,7 +89342,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 3,
               "field_lsb": 0,
@@ -80779,7 +89356,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 227,
+              "position_offset": 263,
               "field_name": "hdr.mpls.tc",
               "field_msb": 2,
               "field_lsb": 0,
@@ -80793,7 +89370,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 222,
+              "position_offset": 258,
               "field_name": "hdr.mpls.bos",
               "field_msb": 0,
               "field_lsb": 0,
@@ -80814,7 +89391,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 213,
+              "position_offset": 249,
               "field_name": "hdr.ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80835,7 +89412,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 197,
+              "position_offset": 233,
               "field_name": "hdr.intl4_tail.next_proto",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80861,7 +89438,7 @@
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 7,
@@ -80877,11 +89454,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -80898,7 +89475,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 111,
+              "position_offset": 116,
               "field_name": "hdr.gtpu_ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -80912,7 +89489,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 102,
+              "position_offset": 107,
               "field_name": "hdr.gtpu_ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -80933,7 +89510,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 157,
+              "position_offset": 193,
               "field_name": "hdr.int_header.max_hop_cnt",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80954,7 +89531,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 190,
+              "position_offset": 226,
               "field_name": "hdr.intl4_shim.int_type",
               "field_msb": 7,
               "field_lsb": 0,
@@ -80971,79 +89548,16 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 104,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 45,
-              "field_name": "fabric_metadata.spgw.outer_header_creation",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 2,
-              "phv_lsb": 2,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 29,
-              "field_name": "fabric_metadata.is_multicast",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 1,
-              "phv_lsb": 1,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 28,
-              "field_name": "fabric_metadata.is_controller_packet_out",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 0,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 24,
-              "field_name": "fabric_metadata.int_meta.source",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 3,
-              "phv_lsb": 3,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 144,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 268,
+              "position_offset": 317,
               "field_name": "ig_intr_md.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 8,
@@ -81080,7 +89594,21 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 230,
+              "position_offset": 30,
+              "field_name": "fabric_metadata.is_multicast",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 6,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 279,
               "field_name": "hdr.packet_in.ingress_port",
               "field_msb": 8,
               "field_lsb": 0,
@@ -81094,10 +89622,12 @@
               "is_pov": false
             },
             {
-              "position_offset": 229,
+              "position_offset": 278,
               "field_name": "hdr.packet_in._pad",
               "field_msb": 6,
               "field_lsb": 0,
+              "live_start": 7,
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 6,
@@ -81113,11 +89643,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 174,
+              "position_offset": 210,
               "field_name": "hdr.int_port_ids.ingress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -81134,11 +89664,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 172,
+              "position_offset": 208,
               "field_name": "hdr.int_port_ids.egress_port_id",
               "field_msb": 15,
               "field_lsb": 0,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
@@ -81155,7 +89685,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 108,
+              "position_offset": 113,
               "field_name": "hdr.gtpu_ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81176,7 +89706,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 218,
+              "position_offset": 254,
               "field_name": "hdr.ipv4.total_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81197,7 +89727,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 258,
+              "position_offset": 307,
               "field_name": "hdr.udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81218,12 +89748,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 21,
+              "position_offset": 22,
               "field_name": "fabric_metadata.int_meta.new_bytes",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -81239,7 +89769,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 43,
+              "position_offset": 44,
               "field_name": "fabric_metadata.spgw.ipv4_len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81251,6 +89781,18 @@
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
+            },
+            {
+              "position_offset": 266,
+              "field_name": "hdr.outer_gtpu.msglen",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -81260,28 +89802,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 77,
-              "field_name": "hdr.gtpu.msglen",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 155,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 116,
+              "position_offset": 121,
               "field_name": "hdr.gtpu_udp.len",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81298,16 +89819,16 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 156,
+          "phv_number": 155,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 59,
+              "position_offset": 64,
               "field_name": "fabric_metadata.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 7,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 11,
@@ -81319,46 +89840,60 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 156,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 66,
+              "field_name": "fabric_metadata.vlan_pri",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 63,
+              "field_name": "fabric_metadata.vlan_cfi",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 7,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.is_controller_packet_out",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 157,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 61,
-              "field_name": "fabric_metadata.vlan_pri",
-              "field_msb": 2,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 7,
-              "phv_lsb": 5,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 58,
-              "field_name": "fabric_metadata.vlan_cfi",
-              "field_msb": 0,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 5,
-              "mutually_exclusive_with": [],
-              "field_width": 1,
-              "phv_msb": 4,
-              "phv_lsb": 4,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 158,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 265,
+              "position_offset": 314,
               "field_name": "hdr.vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -81372,7 +89907,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 262,
+              "position_offset": 311,
               "field_name": "hdr.vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -81386,7 +89921,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 266,
+              "position_offset": 315,
               "field_name": "hdr.vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -81403,11 +89938,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 159,
+          "phv_number": 158,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 263,
+              "position_offset": 312,
               "field_name": "hdr.vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81424,11 +89959,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 160,
+          "phv_number": 159,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 153,
+              "position_offset": 189,
               "field_name": "hdr.int_header.instruction_mask_0003",
               "field_msb": 3,
               "field_lsb": 0,
@@ -81442,7 +89977,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 154,
+              "position_offset": 190,
               "field_name": "hdr.int_header.instruction_mask_0407",
               "field_msb": 3,
               "field_lsb": 0,
@@ -81456,7 +89991,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 155,
+              "position_offset": 191,
               "field_name": "hdr.int_header.instruction_mask_0811",
               "field_msb": 3,
               "field_lsb": 0,
@@ -81470,7 +90005,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 156,
+              "position_offset": 192,
               "field_name": "hdr.int_header.instruction_mask_1215",
               "field_msb": 3,
               "field_lsb": 0,
@@ -81487,15 +90022,36 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 160,
+          "container_type": "normal",
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "hdr.gtpu_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": 0,
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 161,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 182,
+              "position_offset": 218,
               "field_name": "hdr.int_q_occupancy.q_occupancy",
               "field_msb": 23,
               "field_lsb": 8,
-              "live_start": 1,
+              "live_start": 2,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 3,
@@ -81512,7 +90068,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 62,
+              "position_offset": 67,
               "field_name": "hdr.eth_type.value",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81533,7 +90089,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 223,
+              "position_offset": 259,
               "field_name": "hdr.mpls.label",
               "field_msb": 19,
               "field_lsb": 4,
@@ -81554,7 +90110,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 194,
+              "position_offset": 230,
               "field_name": "hdr.intl4_tail.dest_port",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81575,11 +90131,11 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 88,
-              "field_name": "hdr.gtpu.version",
+              "position_offset": 277,
+              "field_name": "hdr.outer_gtpu.version",
               "field_msb": 2,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81589,11 +90145,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 81,
-              "field_name": "hdr.gtpu.pt",
+              "position_offset": 270,
+              "field_name": "hdr.outer_gtpu.pt",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81603,11 +90159,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 83,
-              "field_name": "hdr.gtpu.spare",
+              "position_offset": 272,
+              "field_name": "hdr.outer_gtpu.spare",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81617,11 +90173,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 76,
-              "field_name": "hdr.gtpu.ex_flag",
+              "position_offset": 265,
+              "field_name": "hdr.outer_gtpu.ex_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81631,11 +90187,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 82,
-              "field_name": "hdr.gtpu.seq_flag",
+              "position_offset": 271,
+              "field_name": "hdr.outer_gtpu.seq_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81645,11 +90201,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 80,
-              "field_name": "hdr.gtpu.npdu_flag",
+              "position_offset": 269,
+              "field_name": "hdr.outer_gtpu.npdu_flag",
               "field_msb": 0,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81659,11 +90215,11 @@
               "is_pov": false
             },
             {
-              "position_offset": 79,
-              "field_name": "hdr.gtpu.msgtype",
+              "position_offset": 268,
+              "field_name": "hdr.outer_gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
-              "live_start": "parser",
+              "live_start": 0,
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 1,
@@ -81680,7 +90236,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 163,
+              "position_offset": 199,
               "field_name": "hdr.int_header.ver",
               "field_msb": 1,
               "field_lsb": 0,
@@ -81694,7 +90250,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 158,
+              "position_offset": 194,
               "field_name": "hdr.int_header.rep",
               "field_msb": 1,
               "field_lsb": 0,
@@ -81708,7 +90264,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 150,
+              "position_offset": 186,
               "field_name": "hdr.int_header.c",
               "field_msb": 0,
               "field_lsb": 0,
@@ -81722,7 +90278,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 151,
+              "position_offset": 187,
               "field_name": "hdr.int_header.e",
               "field_msb": 0,
               "field_lsb": 0,
@@ -81736,7 +90292,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 159,
+              "position_offset": 195,
               "field_name": "hdr.int_header.rsvd1",
               "field_msb": 4,
               "field_lsb": 0,
@@ -81750,7 +90306,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 152,
+              "position_offset": 188,
               "field_name": "hdr.int_header.ins_cnt",
               "field_msb": 4,
               "field_lsb": 0,
@@ -81771,7 +90327,7 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 110,
+              "position_offset": 115,
               "field_name": "hdr.gtpu_ipv4.ttl",
               "field_msb": 7,
               "field_lsb": 0,
@@ -81785,7 +90341,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 103,
+              "position_offset": 108,
               "field_name": "hdr.gtpu_ipv4.protocol",
               "field_msb": 7,
               "field_lsb": 0,
@@ -81811,7 +90367,7 @@
               "field_msb": 18,
               "field_lsb": 8,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 10,
@@ -81827,12 +90383,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 26,
+              "position_offset": 27,
               "field_name": "fabric_metadata.ip_eth_type",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -81848,12 +90404,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 34,
+              "position_offset": 35,
               "field_name": "fabric_metadata.mpls_label",
               "field_msb": 19,
               "field_lsb": 4,
               "live_start": "parser",
-              "live_end": 5,
+              "live_end": 6,
               "mutually_exclusive_with": [],
               "field_width": 3,
               "phv_msb": 15,
@@ -81869,12 +90425,12 @@
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 30,
+              "position_offset": 31,
               "field_name": "fabric_metadata.l4_dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
-              "live_end": 0,
+              "live_end": 1,
               "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
@@ -81886,11 +90442,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 176,
+          "phv_number": 172,
           "container_type": "normal",
           "records": [
             {
-              "position_offset": 100,
+              "position_offset": 105,
               "field_name": "hdr.gtpu_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
@@ -81907,154 +90463,101 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 184,
-          "container_type": "normal",
-          "records": [
-            {
-              "position_offset": 32,
-              "field_name": "fabric_metadata.l4_sport",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
           "phv_number": 256,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 239,
-              "field_name": "hdr.tcp.data_offset",
-              "field_msb": 3,
+              "position_offset": 93,
+              "field_name": "hdr.gtpu.version",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 31,
+              "phv_lsb": 29,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 86,
+              "field_name": "hdr.gtpu.pt",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 28,
               "phv_lsb": 28,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 243,
-              "field_name": "hdr.tcp.res",
-              "field_msb": 2,
+              "position_offset": 88,
+              "field_name": "hdr.gtpu.spare",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 27,
+              "phv_lsb": 27,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 81,
+              "field_name": "hdr.gtpu.ex_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 26,
+              "phv_lsb": 26,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "hdr.gtpu.seq_flag",
+              "field_msb": 0,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 25,
               "phv_lsb": 25,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 242,
-              "field_name": "hdr.tcp.ecn",
-              "field_msb": 2,
+              "position_offset": 85,
+              "field_name": "hdr.gtpu.npdu_flag",
+              "field_msb": 0,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 24,
-              "phv_lsb": 22,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 238,
-              "field_name": "hdr.tcp.ctrl",
-              "field_msb": 5,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 1,
-              "phv_msb": 21,
-              "phv_lsb": 16,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 252,
-              "field_name": "hdr.tcp.window",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.icmp.checksum",
-                "hdr.icmp.icmp_code",
-                "hdr.icmp.icmp_type"
-              ],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 123,
-              "field_name": "hdr.icmp.icmp_type",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
-              "field_width": 1,
-              "phv_msb": 31,
               "phv_lsb": 24,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 122,
-              "field_name": "hdr.icmp.icmp_code",
+              "position_offset": 84,
+              "field_name": "hdr.gtpu.msgtype",
               "field_msb": 7,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 1,
               "phv_msb": 23,
               "phv_lsb": 16,
@@ -82062,19 +90565,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 120,
-              "field_name": "hdr.icmp.checksum",
+              "position_offset": 82,
+              "field_name": "hdr.gtpu.msglen",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [
-                "hdr.tcp.window",
-                "hdr.tcp.ctrl",
-                "hdr.tcp.ecn",
-                "hdr.tcp.res",
-                "hdr.tcp.data_offset"
-              ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -82089,7 +90586,303 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 137,
+              "position_offset": 288,
+              "field_name": "hdr.tcp.data_offset",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 292,
+              "field_name": "hdr.tcp.res",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 25,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 291,
+              "field_name": "hdr.tcp.ecn",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 24,
+              "phv_lsb": 22,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 287,
+              "field_name": "hdr.tcp.ctrl",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 21,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 301,
+              "field_name": "hdr.tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 170,
+              "field_name": "hdr.inner_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 166,
+              "field_name": "hdr.inner_udp.dport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.icmp.checksum",
+                "hdr.icmp.icmp_code",
+                "hdr.icmp.icmp_type"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 128,
+              "field_name": "hdr.icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "hdr.icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "hdr.icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.window",
+                "hdr.tcp.ctrl",
+                "hdr.tcp.ecn",
+                "hdr.tcp.res",
+                "hdr.tcp.data_offset",
+                "hdr.inner_udp.dport",
+                "hdr.inner_udp.sport"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 163,
+              "field_name": "hdr.inner_ipv4.version",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 31,
+              "phv_lsb": 28,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 154,
+              "field_name": "hdr.inner_ipv4.ihl",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 27,
+              "phv_lsb": 24,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 141,
+              "field_name": "hdr.inner_ipv4.dscp",
+              "field_msb": 5,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 23,
+              "phv_lsb": 18,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 146,
+              "field_name": "hdr.inner_ipv4.ecn",
+              "field_msb": 1,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 17,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 160,
+              "field_name": "hdr.inner_ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 173,
               "field_name": "hdr.inner_vlan_tag.eth_type",
               "field_msb": 15,
               "field_lsb": 0,
@@ -82103,7 +90896,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 139,
+              "position_offset": 175,
               "field_name": "hdr.inner_vlan_tag.pri",
               "field_msb": 2,
               "field_lsb": 0,
@@ -82117,7 +90910,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 136,
+              "position_offset": 172,
               "field_name": "hdr.inner_vlan_tag.cfi",
               "field_msb": 0,
               "field_lsb": 0,
@@ -82131,7 +90924,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 140,
+              "position_offset": 176,
               "field_name": "hdr.inner_vlan_tag.vlan_id",
               "field_msb": 11,
               "field_lsb": 0,
@@ -82148,17 +90941,22 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 258,
+          "phv_number": 264,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 210,
-              "field_name": "hdr.ipv4.identification",
+              "position_offset": 297,
+              "field_name": "hdr.tcp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -82166,29 +90964,96 @@
               "is_pov": false
             },
             {
-              "position_offset": 205,
-              "field_name": "hdr.ipv4.flags",
-              "field_msb": 2,
+              "position_offset": 289,
+              "field_name": "hdr.tcp.dport",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 1,
+              "mutually_exclusive_with": [
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
               "phv_msb": 15,
-              "phv_lsb": 13,
+              "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 206,
-              "field_name": "hdr.ipv4.frag_offset",
-              "field_msb": 12,
+              "position_offset": 168,
+              "field_name": "hdr.inner_udp.len",
+              "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [],
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
               "field_width": 2,
-              "phv_msb": 12,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 164,
+              "field_name": "hdr.inner_udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.icmp.sequence_number",
+                "hdr.icmp.identifier"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "hdr.icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 31,
+              "phv_lsb": 16,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "hdr.icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [
+                "hdr.tcp.dport",
+                "hdr.tcp.sport",
+                "hdr.inner_udp.checksum",
+                "hdr.inner_udp.len"
+              ],
+              "field_width": 2,
+              "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -82197,17 +91062,17 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 259,
+          "phv_number": 265,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 248,
-              "field_name": "hdr.tcp.sport",
+              "position_offset": 285,
+              "field_name": "hdr.tcp.checksum",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -82215,13 +91080,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 240,
-              "field_name": "hdr.tcp.dport",
+              "position_offset": 299,
+              "field_name": "hdr.tcp.urgent_ptr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.sequence_number", "hdr.icmp.identifier" ],
+              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -82229,13 +91094,34 @@
               "is_pov": false
             },
             {
-              "position_offset": 124,
-              "field_name": "hdr.icmp.identifier",
+              "position_offset": 133,
+              "field_name": "hdr.icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr", "hdr.tcp.checksum" ],
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 266,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 309,
+              "field_name": "hdr.udp.sport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 31,
               "phv_lsb": 16,
@@ -82243,13 +91129,13 @@
               "is_pov": false
             },
             {
-              "position_offset": 126,
-              "field_name": "hdr.icmp.sequence_number",
+              "position_offset": 305,
+              "field_name": "hdr.udp.dport",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.dport", "hdr.tcp.sport" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
@@ -82260,63 +91146,42 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 267,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 57,
+              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 109,
+              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 268,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 50,
-              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 90,
-              "field_name": "hdr.gtpu_ipv4.dst_addr",
-              "field_msb": 31,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 269,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 64,
-              "field_name": "hdr.ethernet.dst_addr",
-              "field_msb": 47,
-              "field_lsb": 16,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 6,
-              "phv_msb": 31,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 32
-        },
-        {
-          "phv_number": 270,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 47,
               "field_lsb": 16,
@@ -82333,11 +91198,11 @@
           "word_bit_width": 32
         },
         {
-          "phv_number": 271,
+          "phv_number": 269,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 244,
+              "position_offset": 293,
               "field_name": "hdr.tcp.seq_no",
               "field_msb": 31,
               "field_lsb": 0,
@@ -82351,10 +91216,10 @@
               "is_pov": false
             },
             {
-              "position_offset": 128,
+              "position_offset": 133,
               "field_name": "hdr.icmp.timestamp",
-              "field_msb": 31,
-              "field_lsb": 0,
+              "field_msb": 63,
+              "field_lsb": 32,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [ "hdr.tcp.seq_no" ],
@@ -82368,11 +91233,74 @@
           "word_bit_width": 32
         },
         {
+          "phv_number": 270,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 281,
+              "field_name": "hdr.tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 271,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "hdr.gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 272,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 244,
+              "field_name": "hdr.ipv4.hdr_checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
           "phv_number": 288,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 221,
+              "position_offset": 257,
               "field_name": "hdr.ipv4.version",
               "field_msb": 3,
               "field_lsb": 0,
@@ -82386,7 +91314,7 @@
               "is_pov": false
             },
             {
-              "position_offset": 212,
+              "position_offset": 248,
               "field_name": "hdr.ipv4.ihl",
               "field_msb": 3,
               "field_lsb": 0,
@@ -82407,7 +91335,7 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 193,
+              "position_offset": 229,
               "field_name": "hdr.intl4_shim.rsvd2",
               "field_msb": 7,
               "field_lsb": 0,
@@ -82428,24 +91356,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 7,
               "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -82459,24 +91377,14 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 150,
+              "field_name": "hdr.inner_ipv4.hdr_checksum",
               "field_msb": 15,
               "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
               "mutually_exclusive_with": [],
-              "field_width": 4,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            },
-            {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "mutually_exclusive_with": [],
-              "field_width": 4,
+              "field_width": 2,
               "phv_msb": 7,
               "phv_lsb": 0,
               "is_compiler_generated": false,
@@ -82486,11 +91394,53 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 300,
+          "phv_number": 296,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 192,
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 23,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 24,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 228,
               "field_name": "hdr.intl4_shim.rsvd1",
               "field_msb": 7,
               "field_lsb": 0,
@@ -82507,11 +91457,53 @@
           "word_bit_width": 8
         },
         {
+          "phv_number": 299,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 300,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 303,
+              "field_name": "hdr.udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 8,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
           "phv_number": 301,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 276,
+              "position_offset": 325,
               "field_name": "last_ipv4_dscp_0",
               "field_msb": 5,
               "field_lsb": 0,
@@ -82528,78 +91520,22 @@
           "word_bit_width": 8
         },
         {
-          "phv_number": 302,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 7,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
-          "phv_number": 303,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 208,
-              "field_name": "hdr.ipv4.hdr_checksum",
-              "field_msb": 15,
-              "field_lsb": 8,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 7,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 8
-        },
-        {
           "phv_number": 320,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 160,
+              "position_offset": 196,
               "field_name": "hdr.int_header.rsvd2",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
+              "mutually_exclusive_with": [],
               "field_width": 2,
               "phv_msb": 15,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
-            },
-            {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 47,
-              "field_lsb": 32,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.int_header.rsvd2" ],
-              "field_width": 8,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
             }
           ],
           "word_bit_width": 16
@@ -82609,29 +91545,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 250,
-              "field_name": "hdr.tcp.urgent_ptr",
-              "field_msb": 15,
+              "position_offset": 241,
+              "field_name": "hdr.ipv4.flags",
+              "field_msb": 2,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.icmp.timestamp" ],
-              "field_width": 2,
+              "mutually_exclusive_with": [],
+              "field_width": 1,
               "phv_msb": 15,
-              "phv_lsb": 0,
+              "phv_lsb": 13,
               "is_compiler_generated": false,
               "is_pov": false
             },
             {
-              "position_offset": 128,
-              "field_name": "hdr.icmp.timestamp",
-              "field_msb": 63,
-              "field_lsb": 48,
+              "position_offset": 242,
+              "field_name": "hdr.ipv4.frag_offset",
+              "field_msb": 12,
+              "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
-              "mutually_exclusive_with": [ "hdr.tcp.urgent_ptr" ],
-              "field_width": 8,
-              "phv_msb": 15,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -82644,8 +91580,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 236,
-              "field_name": "hdr.tcp.checksum",
+              "position_offset": 246,
+              "field_name": "hdr.ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -82665,15 +91601,29 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 256,
-              "field_name": "hdr.udp.dport",
-              "field_msb": 15,
+              "position_offset": 147,
+              "field_name": "hdr.inner_ipv4.flags",
+              "field_msb": 2,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 148,
+              "field_name": "hdr.inner_ipv4.frag_offset",
+              "field_msb": 12,
               "field_lsb": 0,
               "live_start": "parser",
               "live_end": "deparser",
               "mutually_exclusive_with": [],
               "field_width": 2,
-              "phv_msb": 15,
+              "phv_msb": 12,
               "phv_lsb": 0,
               "is_compiler_generated": false,
               "is_pov": false
@@ -82686,8 +91636,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 260,
-              "field_name": "hdr.udp.sport",
+              "position_offset": 152,
+              "field_name": "hdr.inner_ipv4.identification",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -82707,8 +91657,105 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 54,
-              "field_name": "fabric_metadata.spgw.tunnel_src_addr",
+              "position_offset": 162,
+              "field_name": "hdr.inner_ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 15,
+              "phv_lsb": 8,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 155,
+              "field_name": "hdr.inner_ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 61,
+              "field_name": "fabric_metadata.spgw.tunnel_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 123,
+              "field_name": "hdr.gtpu_udp.sport",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 53,
+              "field_name": "fabric_metadata.spgw.tunnel_dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -82719,8 +91766,8 @@
               "is_pov": false
             },
             {
-              "position_offset": 104,
-              "field_name": "hdr.gtpu_ipv4.src_addr",
+              "position_offset": 95,
+              "field_name": "hdr.gtpu_ipv4.dst_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "mutually_exclusive_with": [],
@@ -82734,12 +91781,95 @@
           "word_bit_width": 16
         },
         {
+          "phv_number": 335,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 49,
+              "field_name": "fabric_metadata.spgw.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 273,
+              "field_name": "hdr.outer_gtpu.teid",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "hdr.ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 32,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
           "phv_number": 338,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
               "live_start": "parser",
@@ -82759,8 +91889,8 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 232,
-              "field_name": "hdr.tcp.ack_no",
+              "position_offset": 156,
+              "field_name": "hdr.inner_ipv4.src_addr",
               "field_msb": 31,
               "field_lsb": 16,
               "live_start": "parser",
@@ -82780,7 +91910,49 @@
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 64,
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 341,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 142,
+              "field_name": "hdr.inner_ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 16,
+              "live_start": "parser",
+              "live_end": "deparser",
+              "mutually_exclusive_with": [],
+              "field_width": 4,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 342,
+          "container_type": "tagalong",
+          "records": [
+            {
+              "position_offset": 69,
               "field_name": "hdr.ethernet.dst_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -82797,11 +91969,11 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 341,
+          "phv_number": 343,
           "container_type": "tagalong",
           "records": [
             {
-              "position_offset": 70,
+              "position_offset": 75,
               "field_name": "hdr.ethernet.src_addr",
               "field_msb": 15,
               "field_lsb": 0,
@@ -82818,28 +91990,7 @@
           "word_bit_width": 16
         },
         {
-          "phv_number": 342,
-          "container_type": "tagalong",
-          "records": [
-            {
-              "position_offset": 254,
-              "field_name": "hdr.udp.checksum",
-              "field_msb": 15,
-              "field_lsb": 0,
-              "live_start": "parser",
-              "live_end": "deparser",
-              "mutually_exclusive_with": [],
-              "field_width": 2,
-              "phv_msb": 15,
-              "phv_lsb": 0,
-              "is_compiler_generated": false,
-              "is_pov": false
-            }
-          ],
-          "word_bit_width": 16
-        },
-        {
-          "phv_number": 343,
+          "phv_number": 344,
           "container_type": "tagalong",
           "records": [
             {
@@ -82848,7 +91999,7 @@
               "field_msb": 47,
               "field_lsb": 32,
               "live_start": "parser",
-              "live_end": 1,
+              "live_end": 2,
               "mutually_exclusive_with": [],
               "field_width": 6,
               "phv_msb": 15,
@@ -82867,7 +92018,7 @@
     {
       "direction": "ingress",
       "handle": 16777217,
-      "name": "tbl_act",
+      "name": "tbl_act_0",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -82877,8 +92028,8 @@
             "size": 0,
             "stage_table_type": "ternary_match",
             "logical_table_id": 0,
-            "has_attached_gateway": false,
-            "default_next_table": 1,
+            "has_attached_gateway": true,
+            "default_next_table": 255,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -83731,956 +92882,14 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_0",
-                  "action_handle": 536870913,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 1,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_0",
-                      "next_table_logical_id": 1,
-                      "next_table_stage_no": 0
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_0",
-          "handle": 536870913,
-          "primitives": [
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu_ipv4.$valid" }
-            },
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu_udp.$valid" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870913,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777218,
-      "name": "tbl_act_0",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 0,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 1,
-            "has_attached_gateway": true,
-            "default_next_table": 16,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 5 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 0,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
                   "action_name": "act",
-                  "action_handle": 536870914,
+                  "action_handle": 536870913,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 16,
+                  "next_table_full": 255,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_1",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 1
-                    }
-                  ],
+                  "vliw_instruction_full": 65,
+                  "next_tables": [],
                   "immediate_fields": []
                 }
               ]
@@ -84697,12 +92906,22 @@
       "actions": [
         {
           "name": "act",
-          "handle": 536870914,
+          "handle": 536870913,
           "primitives": [
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "spgw_normalizer_hasReturned" },
+              "dst": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "dst_mask": { "type": "immediate", "name": "511" },
+              "src1": { "type": "phv", "name": "hdr.packet_out.egress_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": {
+                "type": "phv",
+                "name": "fabric_metadata.is_controller_packet_out"
+              },
               "dst_mask": { "type": "immediate", "name": "1" },
               "src1": { "type": "immediate", "name": "1" }
             }
@@ -84725,7 +92944,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870914,
+      "default_action_handle": 536870913,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -84743,24 +92962,519 @@
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 16, "true": 1 },
-          "memory_resource_allocation": { "memory_unit": 4, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 1, "true": 0 },
+          "memory_resource_allocation": { "memory_unit": 5, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "tbl_act_1", "true": "tbl_act_0" },
-          "logical_table_id": 1,
+          "next_table_names": { "false": "FabricIngress.spgw.interfaces", "true": "tbl_act_0" },
+          "logical_table_id": 0,
           "stage_number": 0,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.gtpu.$valid", "start_bit": 3, "bit_width": 1 } ],
-      "condition": "(!(hdr.gtpu.$valid == 1))",
+      "condition_fields": [ { "name": "hdr.packet_out.$valid", "start_bit": 1, "bit_width": 1 } ],
+      "condition": "(hdr.packet_out.$valid == 1)",
       "size": 0
     },
     {
+      "direction": "ingress",
+      "handle": 16777218,
+      "name": "FabricIngress.spgw.interfaces",
+      "table_type": "match",
+      "size": 128,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 0,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 1,
+            "has_attached_gateway": false,
+            "default_next_table": 16,
+            "pack_format": [
+              {
+                "table_word_width": 47,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ipv4_dst_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 24
+                      },
+                      {
+                        "field_name": "ipv4_dst_addr",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "gtpu_is_valid",
+                        "lsb_mem_word_offset": 37,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 38,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 5
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 0 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 0
+            },
+            "result_physical_buses": [ 1 ],
+            "ternary_indirection_stage_table": {
+              "action_format": [
+                {
+                  "action_name": "FabricIngress.spgw.iface_miss",
+                  "action_handle": 536870915,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 4294967295,
+                  "next_table_full": 81,
+                  "vliw_instruction": -1,
+                  "vliw_instruction_full": 68,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_3",
+                      "next_table_logical_id": 1,
+                      "next_table_stage_no": 5
+                    }
+                  ],
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "FabricIngress.spgw.load_iface",
+                  "action_handle": 536870914,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 81,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 66,
+                  "next_tables": [
+                    {
+                      "next_table_name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_gtpu",
+                      "next_table_logical_id": 0,
+                      "next_table_stage_no": 1
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ],
+              "memory_resource_allocation": null,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "entries": [ { "entry_number": 0, "fields": [] } ],
+                  "table_word_width": 0,
+                  "number_memory_units_per_table_word": 0
+                }
+              ],
+              "logical_table_id": 1,
+              "stage_number": 0,
+              "stage_table_type": "ternary_indirection",
+              "size": 0
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554433,
+          "name": "FabricIngress.spgw.interfaces$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870915,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ipv4_dst_addr",
+          "global_name": "hdr.ipv4.dst_addr",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "position": 0,
+          "match_type": "lpm",
+          "is_valid": false,
+          "instance_name": "hdr.ipv4",
+          "field_name": "dst_addr"
+        },
+        {
+          "name": "gtpu_is_valid",
+          "global_name": "hdr.gtpu.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 1,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.gtpu",
+          "field_name": "$valid"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.iface_miss",
+          "handle": 536870915,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.load_iface",
+          "handle": 536870914,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.src_iface" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "action_param", "name": "src_iface" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.skip_spgw" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "src_iface",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 8
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554433,
+      "name": "FabricIngress.spgw.interfaces$action",
+      "table_type": "action",
+      "size": 4096,
+      "stage_tables": [
+        {
+          "stage_number": 0,
+          "size": 4096,
+          "stage_table_type": "action_data",
+          "logical_table_id": 1,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 4,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 3,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 2,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870915
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 4,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 3,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "src_iface"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 104,
+                      "field_name": "--padding_8_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 2,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "src_iface"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 72,
+                      "field_name": "--padding_8_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "src_iface"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 40,
+                      "field_name": "--padding_8_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "src_iface"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "--padding_8_31--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870914
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.iface_miss",
+          "handle": 536870915,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricIngress.spgw.load_iface",
+          "handle": 536870914,
+          "p4_parameters": [
+            {
+              "name": "src_iface",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 8
+            }
+          ]
+        }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
       "direction": "egress",
-      "handle": 16777252,
-      "name": "tbl_act_17",
+      "handle": 16777240,
+      "name": "tbl_act_6",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -84806,17013 +93520,9 @@
               }
             ],
             "memory_resource_allocation": null,
-            "result_physical_buses": [ 4 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 0,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_18",
-                  "action_handle": 536870970,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 3,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_18",
-                      "next_table_logical_id": 3,
-                      "next_table_stage_no": 0
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_18",
-          "handle": 536870970,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.eg_tstamp" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "eg_intr_md_from_prsr.global_tstamp" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870970,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "handle": 16777253,
-      "name": "tbl_act_18",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 0,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 3,
-            "has_attached_gateway": true,
-            "default_next_table": 255,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 3 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 0,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_17",
-                  "action_handle": 536870971,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 255,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 64,
-                  "next_tables": [],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_17",
-          "handle": 536870971,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870971,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_act_18",
-      "handle": 1879048193,
-      "name": "cond-19",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 4, "true": 3 },
-          "memory_resource_allocation": { "memory_unit": 3, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_19", "true": "tbl_act_18" },
-          "logical_table_id": 3,
-          "stage_number": 0,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "fabric_metadata.is_controller_packet_out",
-          "start_bit": 0,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(fabric_metadata.is_controller_packet_out == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_act_19",
-      "handle": 1879048194,
-      "name": "cond-20",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 5, "true": 4 },
-          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_spgw_egress_gtpu_encap", "true": "tbl_act_19" },
-          "logical_table_id": 4,
-          "stage_number": 0,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        { "name": "eg_intr_md.egress_port", "start_bit": 0, "bit_width": 8 },
-        { "name": "eg_intr_md.egress_port", "start_bit": 8, "bit_width": 1 }
-      ],
-      "condition": "(eg_intr_md.egress_port == 192)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777254,
-      "name": "tbl_act_19",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 0,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 4,
-            "has_attached_gateway": true,
-            "default_next_table": 255,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 2 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 0,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_19",
-                  "action_handle": 536870972,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 255,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
-                  "next_tables": [],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_19",
-          "handle": 536870972,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.packet_in.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.packet_in.ingress_port" },
-              "dst_mask": { "type": "immediate", "name": "511" },
-              "src1": { "type": "phv", "name": "ig_intr_md.ingress_port" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870972,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "handle": 16777255,
-      "name": "tbl_spgw_egress_gtpu_encap",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 0,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 5,
-            "has_attached_gateway": true,
-            "default_next_table": 6,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 1 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 0,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "FabricEgress.spgw_egress.gtpu_encap",
-                  "action_handle": 536870984,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 6,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 67,
-                  "next_tables": [
-                    {
-                      "next_table_name": "",
-                      "next_table_logical_id": 6,
-                      "next_table_stage_no": 0
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554442,
-          "name": "tbl_spgw_egress_gtpu_encap$action"
-        }
-      ],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "FabricEgress.spgw_egress.gtpu_encap",
-          "handle": 536870984,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu_ipv4.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.version" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "immediate", "name": "4" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ihl" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "immediate", "name": "5" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.total_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" },
-              "src2": { "type": "immediate", "name": "36" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.identification" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "immediate", "name": "0x1513" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ttl" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "64" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.protocol" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "17" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu_udp.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.sport" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "immediate", "name": "2152" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.dport" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "immediate", "name": "2152" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.spgw.ipv4_len" },
-              "src2": { "type": "immediate", "name": "16" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.version" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "immediate", "name": "0x1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.pt" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0x1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.spare" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.ex_flag" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.seq_flag" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.npdu_flag" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.msgtype" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "0xff" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.msglen" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.spgw.ipv4_len" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu.teid" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "fabric_metadata.spgw.teid" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870984,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_spgw_egress_gtpu_encap",
-      "handle": 1879048195,
-      "name": "cond-29",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 6, "true": 5 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "", "true": "tbl_spgw_egress_gtpu_encap" },
-          "logical_table_id": 5,
-          "stage_number": 0,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "fabric_metadata.spgw.outer_header_creation",
-          "start_bit": 2,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(fabric_metadata.spgw.outer_header_creation == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 33554442,
-      "name": "tbl_spgw_egress_gtpu_encap$action",
-      "table_type": "action",
-      "size": 1024,
-      "stage_tables": [
-        {
-          "stage_number": 0,
-          "size": 1024,
-          "stage_table_type": "action_data",
-          "logical_table_id": 5,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 36, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 74,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 72,
-                      "field_name": "$constant6"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "$constant7"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 104,
-                      "field_name": "$constant8"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 106,
-                      "field_name": "$constant9"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 2152, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 2152, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 7,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 65,
-                      "field_name": "--padding_65_71--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 73,
-                      "field_name": "--padding_73_73--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 21,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "--padding_75_95--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 7,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 97,
-                      "field_name": "--padding_97_103--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 105,
-                      "field_name": "--padding_105_105--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 21,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "--padding_107_127--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870984
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricEgress.spgw_egress.gtpu_encap",
-          "handle": 536870984,
-          "p4_parameters": []
-        }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "egress",
-      "attached_to": "-",
-      "handle": 1879048196,
-      "name": "cond-30",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 85, "true": 7 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "tbl_egress_next_set_mpls",
-            "true": "FabricEgress.process_int_main.process_int_source.tb_int_source"
-          },
-          "logical_table_id": 6,
-          "stage_number": 0,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        { "name": "ig_intr_md.ingress_port", "start_bit": 0, "bit_width": 8 },
-        { "name": "ig_intr_md.ingress_port", "start_bit": 8, "bit_width": 1 },
-        { "name": "eg_intr_md.egress_port", "start_bit": 16, "bit_width": 8 },
-        { "name": "eg_intr_md.egress_port", "start_bit": 24, "bit_width": 1 },
-        { "name": "hdr.udp.$valid", "start_bit": 32, "bit_width": 1 },
-        { "name": "hdr.tcp.$valid", "start_bit": 33, "bit_width": 1 }
-      ],
-      "condition": "(ig_intr_md.ingress_port != 192 && eg_intr_md.egress_port != 192 && (hdr.udp.$valid == 1 || hdr.tcp.$valid == 1))",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777256,
-      "name": "FabricEgress.process_int_main.process_int_source.tb_int_source",
-      "table_type": "match",
-      "size": 512,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 0,
-            "size": 512,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 7,
-            "has_attached_gateway": true,
-            "default_next_table": 21,
-            "pack_format": [
-              {
-                "table_word_width": 141,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 3,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--version--",
-                        "lsb_mem_word_offset": 43,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "version",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_payload_1--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_1--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_payload_2--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_2--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "l4_dport",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "l4_sport",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "l4_sport",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 41,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 41,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 12,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 34
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": {
-              "memory_type": "tcam",
-              "memory_units_and_vpns": [ { "memory_units": [ 0, 1, 2 ], "vpns": [ 0 ] } ],
-              "spare_bank_memory_unit": 2
-            },
-            "result_physical_buses": [ 0 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 0,
-              "stage_table_type": "ternary_indirection",
-              "size": 32768,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": {
-                "memory_type": "sram",
-                "memory_units_and_vpns": [ { "memory_units": [ 2 ], "vpns": [ 0 ] } ],
-                "spare_bank_memory_unit": 2
-              },
-              "action_format": [
-                {
-                  "action_name": "nop",
-                  "action_handle": 536870986,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 4294967295,
-                  "next_table_full": 21,
-                  "vliw_instruction": -1,
-                  "vliw_instruction_full": 64,
-                  "next_tables": [
-                    {
-                      "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
-                      "next_table_logical_id": 5,
-                      "next_table_stage_no": 1
-                    }
-                  ],
-                  "immediate_fields": []
-                },
-                {
-                  "action_name": "FabricEgress.process_int_main.process_int_source.int_source_dscp",
-                  "action_handle": 536870985,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 21,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 68,
-                  "next_tables": [
-                    {
-                      "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
-                      "next_table_logical_id": 5,
-                      "next_table_stage_no": 1
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554443,
-          "name": "FabricEgress.process_int_main.process_int_source.tb_int_source$action"
-        }
-      ],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 67108876,
-          "name": "FabricEgress.process_int_main.process_int_source.counter_int_source"
-        }
-      ],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "nop",
-          "handle": 536870986,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_source.int_source_dscp",
-          "handle": 536870985,
-          "primitives": [
-            {
-              "name": "CountPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricEgress.process_int_main.process_int_source.counter_int_source"
-              }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.intl4_shim.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.intl4_shim.int_type" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.intl4_shim.len_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "4" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_header.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.ver" },
-              "dst_mask": { "type": "immediate", "name": "3" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.rep" },
-              "dst_mask": { "type": "immediate", "name": "3" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.c" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.e" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.rsvd1" },
-              "dst_mask": { "type": "immediate", "name": "31" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.ins_cnt" },
-              "dst_mask": { "type": "immediate", "name": "31" },
-              "src1": { "type": "action_param", "name": "ins_cnt" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.max_hop_cnt" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "action_param", "name": "max_hop" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.total_hop_cnt" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_0003" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "action_param", "name": "ins_mask0003" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_0407" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "action_param", "name": "ins_mask0407" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_0811" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_1215" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.intl4_tail.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.intl4_tail.next_proto" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.protocol" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.intl4_tail.dest_port" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.l4_dport" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.intl4_tail.dscp" },
-              "dst_mask": { "type": "immediate", "name": "63" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.dscp" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" },
-              "src2": { "type": "immediate", "name": "16" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.udp.len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.udp.len" },
-              "src2": { "type": "immediate", "name": "16" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
-              "dst_mask": { "type": "immediate", "name": "63" },
-              "src1": { "type": "immediate", "name": "0x1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "disallowed_as_default_action_reason": "",
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [
-            { "name": "max_hop", "start_bit": 0, "position": 0, "bit_width": 8 },
-            { "name": "ins_cnt", "start_bit": 8, "position": 1, "bit_width": 5 },
-            {
-              "name": "ins_mask0003",
-              "start_bit": 13,
-              "position": 2,
-              "bit_width": 4
-            },
-            {
-              "name": "ins_mask0407",
-              "start_bit": 17,
-              "position": 3,
-              "bit_width": 4
-            }
-          ],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870986,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "ipv4_src",
-          "global_name": "hdr.ipv4.src_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 0,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "hdr.ipv4",
-          "field_name": "src_addr"
-        },
-        {
-          "name": "ipv4_dst",
-          "global_name": "hdr.ipv4.dst_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 1,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "hdr.ipv4",
-          "field_name": "dst_addr"
-        },
-        {
-          "name": "l4_sport",
-          "global_name": "fabric_metadata.l4_sport",
-          "start_bit": 0,
-          "bit_width": 16,
-          "bit_width_full": 16,
-          "position": 2,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "fabric_metadata",
-          "field_name": "l4_sport"
-        },
-        {
-          "name": "l4_dport",
-          "global_name": "fabric_metadata.l4_dport",
-          "start_bit": 0,
-          "bit_width": 16,
-          "bit_width_full": 16,
-          "position": 3,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "fabric_metadata",
-          "field_name": "l4_dport"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "FabricEgress.process_int_main.process_int_source.tb_int_source",
-      "handle": 1879048197,
-      "name": "cond-31",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 21, "true": 7 },
-          "memory_resource_allocation": { "memory_unit": 5, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
-            "true": "FabricEgress.process_int_main.process_int_source.tb_int_source"
-          },
-          "logical_table_id": 7,
-          "stage_number": 0,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "fabric_metadata.int_meta.source",
-          "start_bit": 3,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(fabric_metadata.int_meta.source == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 67108876,
-      "name": "FabricEgress.process_int_main.process_int_source.counter_int_source",
-      "table_type": "statistics",
-      "size": 1024,
-      "stage_tables": [
-        {
-          "stage_number": 0,
-          "size": 1024,
-          "stage_table_type": "statistics",
-          "logical_table_id": 7,
-          "pack_format": [
-            {
-              "table_word_width": 128,
-              "memory_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 78 ], "vpns": [ 0 ] } ],
-            "spare_bank_memory_unit": 79
-          },
-          "stats_alu_index": 3
-        }
-      ],
-      "how_referenced": "direct",
-      "enable_pfe": false,
-      "pfe_bit_position": 0,
-      "byte_counter_resolution": 64,
-      "packet_counter_resolution": 64,
-      "statistics_type": "packets_and_bytes"
-    },
-    {
-      "direction": "egress",
-      "handle": 33554443,
-      "name": "FabricEgress.process_int_main.process_int_source.tb_int_source$action",
-      "table_type": "action",
-      "size": 2048,
-      "stage_tables": [
-        {
-          "stage_number": 0,
-          "size": 2048,
-          "stage_table_type": "action_data",
-          "logical_table_id": 7,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "max_hop"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
-                      "lsb_mem_word_offset": 84,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 92,
-                      "field_name": "ins_mask0003"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 88,
-                      "field_name": "ins_mask0407"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "$constant6"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 106,
-                      "field_name": "$constant7"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 5 } ],
-                      "lsb_mem_word_offset": 101,
-                      "field_name": "$constant8"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "ins_cnt"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 72,
-                      "field_name": "--padding_8_15--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "max_hop"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
-                      "lsb_mem_word_offset": 20,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 28,
-                      "field_name": "ins_mask0003"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 24,
-                      "field_name": "ins_mask0407"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 43,
-                      "field_name": "$constant6"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 42,
-                      "field_name": "$constant7"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 5 } ],
-                      "lsb_mem_word_offset": 37,
-                      "field_name": "$constant8"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "ins_cnt"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 8,
-                      "field_name": "--padding_8_15--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870985
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870986
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricEgress.process_int_main.process_int_source.int_source_dscp",
-          "handle": 536870985,
-          "p4_parameters": [
-            { "name": "max_hop", "start_bit": 0, "position": 0, "bit_width": 8 },
-            { "name": "ins_cnt", "start_bit": 8, "position": 1, "bit_width": 5 },
-            {
-              "name": "ins_mask0003",
-              "start_bit": 13,
-              "position": 2,
-              "bit_width": 4
-            },
-            {
-              "name": "ins_mask0407",
-              "start_bit": 17,
-              "position": 3,
-              "bit_width": 4
-            }
-          ]
-        },
-        { "name": "nop", "handle": 536870986, "p4_parameters": [] }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777219,
-      "name": "tbl_act_1",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 1,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 0,
-            "has_attached_gateway": true,
-            "default_next_table": 17,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 4 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 1,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_3",
-                  "action_handle": 536870915,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 17,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_3",
-                      "next_table_logical_id": 1,
-                      "next_table_stage_no": 1
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_3",
-          "handle": 536870915,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.$valid" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.version" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.version" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ihl" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.ihl" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.dscp" },
-              "dst_mask": { "type": "immediate", "name": "63" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.dscp" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ecn" },
-              "dst_mask": { "type": "immediate", "name": "3" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.ecn" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.total_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.identification" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.identification" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.flags" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.flags" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.frag_offset" },
-              "dst_mask": { "type": "immediate", "name": "8191" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.frag_offset" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ttl" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.ttl" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.protocol" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.protocol" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.hdr_checksum" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.src_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.src_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.dst_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.dst_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
-              "dst_mask": { "type": "immediate", "name": "15" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
-              "dst_mask": { "type": "immediate", "name": "63" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
-              "dst_mask": { "type": "immediate", "name": "3" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
-              "dst_mask": { "type": "immediate", "name": "8191" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.$valid" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "phv", "name": "hdr.udp.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.sport" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.udp.sport" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.dport" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.udp.dport" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.udp.len" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.gtpu_udp.checksum" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.udp.checksum" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870915,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_1",
-      "handle": 1879048198,
-      "name": "cond-2",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 19, "true": 16 },
-          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_4", "true": "tbl_act_1" },
-          "logical_table_id": 0,
-          "stage_number": 1,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "spgw_normalizer_hasReturned",
-          "start_bit": 0,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(!spgw_normalizer_hasReturned)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777220,
-      "name": "tbl_act_3",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 1,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 1,
-            "has_attached_gateway": true,
-            "default_next_table": 19,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 3 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 1,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_2",
-                  "action_handle": 536870917,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 19,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_4",
-                      "next_table_logical_id": 3,
-                      "next_table_stage_no": 1
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_2",
-          "handle": 536870917,
-          "primitives": [
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.udp.$valid" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870917,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_3",
-      "handle": 1879048199,
-      "name": "cond-3",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 17, "true": 18 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_3", "true": "tbl_act_2" },
-          "logical_table_id": 1,
-          "stage_number": 1,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.inner_udp.$valid", "start_bit": 1, "bit_width": 1 } ],
-      "condition": "(hdr.inner_udp.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777221,
-      "name": "tbl_act_2",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 1,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 2,
-            "has_attached_gateway": false,
-            "default_next_table": 19,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 2 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 1,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_1",
-                  "action_handle": 536870916,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 19,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 68,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_4",
-                      "next_table_logical_id": 3,
-                      "next_table_stage_no": 1
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_1",
-          "handle": 536870916,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.udp.$valid" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "phv", "name": "hdr.inner_udp.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.udp.sport" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_udp.sport" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.udp.dport" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_udp.dport" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.udp.len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_udp.len" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.udp.checksum" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.inner_udp.checksum" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870916,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777222,
-      "name": "tbl_act_4",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 1,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 3,
-            "has_attached_gateway": true,
-            "default_next_table": 255,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 1 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 1,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_4",
-                  "action_handle": 536870918,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 255,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 67,
-                  "next_tables": [],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_4",
-          "handle": 536870918,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
-              "dst_mask": { "type": "immediate", "name": "511" },
-              "src1": { "type": "phv", "name": "hdr.packet_out.egress_port" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": {
-                "type": "phv",
-                "name": "fabric_metadata.is_controller_packet_out"
-              },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870918,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_4",
-      "handle": 1879048200,
-      "name": "cond-4",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 20, "true": 19 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_9", "true": "tbl_act_4" },
-          "logical_table_id": 3,
-          "stage_number": 1,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.packet_out.$valid", "start_bit": 1, "bit_width": 1 } ],
-      "condition": "(hdr.packet_out.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777223,
-      "name": "tbl_act_9",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 1,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 4,
-            "has_attached_gateway": true,
-            "default_next_table": 32,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 0 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 1,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_8",
-                  "action_handle": 536870927,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 32,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 69,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_spgw_ingress_gtpu_decap",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_8",
-          "handle": 536870927,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.direction" },
-              "dst_mask": { "type": "immediate", "name": "3" },
-              "src1": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870927,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_9",
-      "handle": 1879048201,
-      "name": "cond-7",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 33, "true": 20 },
-          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "FabricIngress.spgw_ingress.downlink_filter_table",
-            "true": "tbl_act_9"
-          },
-          "logical_table_id": 4,
-          "stage_number": 1,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.gtpu.$valid", "start_bit": 3, "bit_width": 1 } ],
-      "condition": "(hdr.gtpu.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777257,
-      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
-      "table_type": "match",
-      "size": 1,
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "default_action_handle": 536870988,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "int_is_valid",
-          "global_name": "hdr.int_header.$valid",
-          "start_bit": 0,
-          "bit_width": 1,
-          "bit_width_full": 1,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": true,
-          "instance_name": "hdr.int_header",
-          "field_name": "$valid"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 1,
-            "size": 1024,
-            "stage_table_type": "hash_match",
-            "logical_table_id": 5,
-            "has_attached_gateway": true,
-            "default_next_table": 255,
-            "hash_functions": [
-              {
-                "hash_bits": [
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "int_is_valid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 0
-                  }
-                ],
-                "hash_function_number": 0,
-                "ghost_bit_to_hash_bit": [ [ 0 ] ],
-                "ghost_bit_info": [ { "field_name": "int_is_valid", "bit_in_match_spec": 0 } ]
-              }
-            ],
-            "action_format": [
-              {
-                "action_name": "nop",
-                "action_handle": 536870988,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 4294967295,
-                "next_table_full": 42,
-                "vliw_instruction": -1,
-                "vliw_instruction_full": 64,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_27",
-                    "next_table_logical_id": 10,
-                    "next_table_stage_no": 2
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.init_metadata",
-                "action_handle": 536870987,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 42,
-                "vliw_instruction": 1,
-                "vliw_instruction_full": 65,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_27",
-                    "next_table_logical_id": 10,
-                    "next_table_stage_no": 2
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "switch_id",
-                    "param_type": "parameter",
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 32
-                  }
-                ]
-              }
-            ],
-            "result_physical_buses": [ 14 ],
-            "pack_format": [
-              {
-                "memory_word_width": 128,
-                "table_word_width": 128,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1
-              }
-            ],
-            "memory_resource_allocation": null,
-            "stash_allocation": {
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 32,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "immediate",
-                          "match_mode": "unused"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action",
-                          "match_mode": "unused"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "num_stash_entries": 2,
-              "stash_entries": [
-                [
-                  {
-                    "stash_entry_id": 28,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ],
-                [
-                  {
-                    "stash_entry_id": 29,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ]
-              ]
-            },
-            "ways": [
-              {
-                "stage_number": 1,
-                "way_number": 0,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 79,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 33,
-                            "field_name": "--padding_33_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 0,
-                  "hash_entry_bit_hi": 9,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
-                }
-              }
-            ]
-          }
-        ],
-        "match_type": "exact",
-        "uses_dynamic_key_masks": false
-      },
-      "actions": [
-        {
-          "name": "nop",
-          "handle": 536870988,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.init_metadata",
-          "handle": 536870987,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.transit" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_switch_id.switch_id" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "switch_id" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_port_ids.ingress_port_id" },
-              "dst_mask": { "type": "immediate", "name": "127" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_port_ids.ingress_port_id" },
-              "dst_mask": { "type": "immediate", "name": "511" },
-              "src1": { "type": "phv", "name": "ig_intr_md.ingress_port" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_port_ids.egress_port_id" },
-              "dst_mask": { "type": "immediate", "name": "127" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_port_ids.egress_port_id" },
-              "dst_mask": { "type": "immediate", "name": "511" },
-              "src1": { "type": "phv", "name": "eg_intr_md.egress_port" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_ingress_tstamp.ingress_tstamp" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.ig_tstamp" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_egress_tstamp.egress_tstamp" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.eg_tstamp" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "sub",
-              "dst": { "type": "phv", "name": "hdr.int_hop_latency.hop_latency" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "eg_intr_md_from_prsr.global_tstamp" },
-              "src2": { "type": "phv", "name": "ig_intr_md_from_prsr.global_tstamp" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_q_occupancy.q_occupancy" },
-              "dst_mask": { "type": "immediate", "name": "31" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.int_q_occupancy.q_occupancy" },
-              "dst_mask": { "type": "immediate", "name": "524287" },
-              "src1": { "type": "phv", "name": "eg_intr_md.deq_qdepth" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": false,
-          "disallowed_as_default_action_reason": "has_const_default",
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [
-            {
-              "name": "switch_id",
-              "start_bit": 0,
-              "position": 0,
-              "bit_width": 32
-            }
-          ],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
-      "handle": 1879048202,
-      "name": "cond-32",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 85, "true": 21 },
-          "memory_resource_allocation": { "memory_unit": 3, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "tbl_egress_next_set_mpls",
-            "true": "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
-          },
-          "logical_table_id": 5,
-          "stage_number": 1,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.int_header.$valid", "start_bit": 4, "bit_width": 1 } ],
-      "condition": "(hdr.int_header.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777227,
-      "name": "tbl_spgw_ingress_gtpu_decap",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 0,
-            "has_attached_gateway": false,
-            "default_next_table": 36,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 8 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 4,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 30,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 127,
-                          "field_name": "--padding_31_31--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 30,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 95,
-                          "field_name": "--padding_31_31--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 30,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 63,
-                          "field_name": "--padding_31_31--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 30,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 31,
-                          "field_name": "--padding_31_31--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "FabricIngress.spgw_ingress.gtpu_decap",
-                  "action_handle": 536870928,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 36,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "FabricIngress.spgw_ingress.uplink_filter_table",
-                      "next_table_logical_id": 4,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": [
-                    {
-                      "param_name": "constant_0",
-                      "param_type": "constant",
-                      "const_value": 0,
-                      "param_shift": 0,
-                      "dest_start": 13,
-                      "dest_width": 1
-                    },
-                    {
-                      "param_name": "constant_0",
-                      "param_type": "constant",
-                      "const_value": 0,
-                      "param_shift": 0,
-                      "dest_start": 11,
-                      "dest_width": 1
-                    },
-                    {
-                      "param_name": "constant_1",
-                      "param_type": "constant",
-                      "const_value": 1,
-                      "param_shift": 0,
-                      "dest_start": 27,
-                      "dest_width": 1
-                    },
-                    {
-                      "param_name": "constant_1",
-                      "param_type": "constant",
-                      "const_value": 1,
-                      "param_shift": 0,
-                      "dest_start": 29,
-                      "dest_width": 1
-                    }
-                  ]
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "FabricIngress.spgw_ingress.gtpu_decap",
-          "handle": 536870928,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.teid" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.gtpu.teid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_dst_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.gtpu_ipv4.dst_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.src_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.dst_addr" }
-            },
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu_ipv4.$valid" }
-            },
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu_udp.$valid" }
-            },
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870928,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777224,
-      "name": "FabricIngress.spgw_ingress.downlink_filter_table",
-      "table_type": "match",
-      "size": 512,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 512,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 1,
-            "has_attached_gateway": false,
-            "default_next_table": 34,
-            "pack_format": [
-              {
-                "table_word_width": 47,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--version--",
-                        "lsb_mem_word_offset": 43,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "version",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "ipv4_prefix",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 32
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 10
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": {
-              "memory_type": "tcam",
-              "memory_units_and_vpns": [ { "memory_units": [ 3 ], "vpns": [ 0 ] } ],
-              "spare_bank_memory_unit": 3
-            },
-            "result_physical_buses": [ 1 ],
-            "ternary_indirection_stage_table": {
-              "action_format": [
-                {
-                  "action_name": "nop",
-                  "action_handle": 536870929,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 35,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 64,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_10",
-                      "next_table_logical_id": 2,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ],
-              "memory_resource_allocation": null,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "entries": [ { "entry_number": 0, "fields": [] } ],
-                  "table_word_width": 0,
-                  "number_memory_units_per_table_word": 0
-                }
-              ],
-              "logical_table_id": 1,
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "default_action_handle": 536870929,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "ipv4_prefix",
-          "global_name": "hdr.ipv4.dst_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 0,
-          "match_type": "lpm",
-          "is_valid": false,
-          "instance_name": "hdr.ipv4",
-          "field_name": "dst_addr"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "actions": [
-        {
-          "name": "nop",
-          "handle": 536870929,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777225,
-      "name": "tbl_act_10",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 2,
-            "has_attached_gateway": false,
-            "default_next_table": 38,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 7 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_9",
-                  "action_handle": 536870930,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 38,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 66,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_5",
-                      "next_table_logical_id": 6,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_9",
-          "handle": 536870930,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.direction" },
-              "dst_mask": { "type": "immediate", "name": "3" },
-              "src1": { "type": "immediate", "name": "2" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870930,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777226,
-      "name": "tbl_act_11",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 3,
-            "has_attached_gateway": false,
-            "default_next_table": 38,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 6 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_10",
-                  "action_handle": 536870931,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 38,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 67,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_5",
-                      "next_table_logical_id": 6,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_10",
-          "handle": 536870931,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "spgw_ingress_hasReturned" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870931,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777228,
-      "name": "FabricIngress.spgw_ingress.uplink_filter_table",
-      "table_type": "match",
-      "size": 9216,
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "default_action_handle": 536870925,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "gtp_ipv4_dst",
-          "global_name": "hdr.gtpu_ipv4.dst_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "hdr.gtpu_ipv4",
-          "field_name": "dst_addr"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 9216,
-            "stage_table_type": "hash_match",
-            "logical_table_id": 4,
-            "has_attached_gateway": false,
-            "default_next_table": 255,
-            "hash_functions": [
-              {
-                "hash_bits": [
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 5,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 8,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 11,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 12,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      }
-                    ],
-                    "hash_bit": 15,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 16,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 20,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 21,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 22,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      }
-                    ],
-                    "hash_bit": 23,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 25,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "gtp_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 0
-                  }
-                ],
-                "hash_function_number": 0,
-                "ghost_bit_to_hash_bit": [
-                  [ 0, 11, 22 ],
-                  [ 1, 12, 23 ],
-                  [ 2, 13, 24 ],
-                  [ 3, 14, 25 ],
-                  [ 4, 15, 26 ],
-                  [ 5, 16, 27 ],
-                  [ 6, 17, 28 ],
-                  [ 7, 18, 29 ],
-                  [ 8, 19, 20 ],
-                  [ 9, 10, 21 ]
-                ],
-                "ghost_bit_info": [
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 0 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 1 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 2 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 3 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 4 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 5 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 6 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 7 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 8 },
-                  { "field_name": "gtp_ipv4_dst", "bit_in_match_spec": 9 }
-                ]
-              }
-            ],
-            "action_format": [
-              {
-                "action_name": "nop",
-                "action_handle": 536870925,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 37,
-                "vliw_instruction": 0,
-                "vliw_instruction_full": 64,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_5",
-                    "next_table_logical_id": 6,
-                    "next_table_stage_no": 2
-                  }
-                ],
-                "immediate_fields": []
-              }
-            ],
-            "result_physical_buses": [ 14 ],
-            "pack_format": [
-              {
-                "memory_word_width": 128,
-                "table_word_width": 128,
-                "entries_per_table_word": 3,
-                "number_memory_units_per_table_word": 1
-              }
-            ],
-            "memory_resource_allocation": null,
-            "stash_allocation": {
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "field_name": "gtp_ipv4_dst",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 50,
-                          "start_bit": 10,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 6
-                        },
-                        {
-                          "field_name": "gtp_ipv4_dst",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 32,
-                          "start_bit": 16,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "gtp_ipv4_dst",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 40,
-                          "start_bit": 24,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "num_stash_entries": 2,
-              "stash_entries": [
-                [
-                  {
-                    "stash_entry_id": 28,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ],
-                [
-                  {
-                    "stash_entry_id": 29,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ]
-              ]
-            },
-            "ways": [
-              {
-                "stage_number": 2,
-                "way_number": 0,
-                "stage_table_type": "hash_way",
-                "size": 3072,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 3,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 2,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 98,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          }
-                        ]
-                      },
-                      {
-                        "entry_number": 1,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 74,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          }
-                        ]
-                      },
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 2,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 0,
-                  "hash_entry_bit_hi": 9,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0, 1, 2 ] } ]
-                }
-              },
-              {
-                "stage_number": 2,
-                "way_number": 1,
-                "stage_table_type": "hash_way",
-                "size": 3072,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 3,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 2,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 98,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          }
-                        ]
-                      },
-                      {
-                        "entry_number": 1,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 74,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          }
-                        ]
-                      },
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 2,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 10,
-                  "hash_entry_bit_hi": 19,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 3, 4, 5 ] } ]
-                }
-              },
-              {
-                "stage_number": 2,
-                "way_number": 2,
-                "stage_table_type": "hash_way",
-                "size": 3072,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 3,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 2,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 98,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          }
-                        ]
-                      },
-                      {
-                        "entry_number": 1,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 74,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          }
-                        ]
-                      },
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "gtp_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 2,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 20,
-                  "hash_entry_bit_hi": 29,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 6, 7, 8 ] } ]
-                }
-              }
-            ]
-          }
-        ],
-        "match_type": "exact",
-        "uses_dynamic_key_masks": false
-      },
-      "actions": [
-        {
-          "name": "nop",
-          "handle": 536870925,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777229,
-      "name": "tbl_act_8",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 5,
-            "has_attached_gateway": false,
-            "default_next_table": 38,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
             "result_physical_buses": [ 5 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 2,
+              "stage_number": 0,
               "stage_table_type": "ternary_indirection",
               "size": 0,
               "pack_format": [
@@ -102629,17 +94339,17 @@
               "action_format": [
                 {
                   "action_name": "act_7",
-                  "action_handle": 536870926,
+                  "action_handle": 536870966,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 38,
+                  "next_table_full": 3,
                   "vliw_instruction": 0,
-                  "vliw_instruction_full": 68,
+                  "vliw_instruction_full": 65,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_5",
-                      "next_table_logical_id": 6,
-                      "next_table_stage_no": 2
+                      "next_table_name": "tbl_act_7",
+                      "next_table_logical_id": 3,
+                      "next_table_stage_no": 0
                     }
                   ],
                   "immediate_fields": []
@@ -102658,12 +94368,14 @@
       "actions": [
         {
           "name": "act_7",
-          "handle": 536870926,
+          "handle": 536870966,
           "primitives": [
             {
-              "name": "DropPrimitive",
-              "dst": { "type": "phv", "name": "ig_intr_md_for_dprsr.drop_ctl" },
-              "src1": { "type": "immediate", "name": "1" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.eg_tstamp" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "eg_intr_md_from_prsr.global_tstamp" }
             }
           ],
           "indirect_resources": [],
@@ -102684,7 +94396,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870926,
+      "default_action_handle": 536870966,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -102695,20 +94407,20 @@
       "static_entries": []
     },
     {
-      "direction": "ingress",
-      "handle": 16777230,
-      "name": "tbl_act_5",
+      "direction": "egress",
+      "handle": 16777241,
+      "name": "tbl_act_7",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 2,
+            "stage_number": 0,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 6,
+            "logical_table_id": 3,
             "has_attached_gateway": true,
-            "default_next_table": 39,
+            "default_next_table": 255,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -102745,2826 +94457,7 @@
             "memory_resource_allocation": null,
             "result_physical_buses": [ 4 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_5",
-                  "action_handle": 536870919,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 39,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 69,
-                  "next_tables": [
-                    {
-                      "next_table_name": "FabricIngress.filtering.fwd_classifier",
-                      "next_table_logical_id": 7,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_5",
-          "handle": 536870919,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.vlan_id" },
-              "dst_mask": { "type": "immediate", "name": "4095" },
-              "src1": { "type": "phv", "name": "hdr.vlan_tag.vlan_id" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.vlan_pri" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "phv", "name": "hdr.vlan_tag.pri" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.vlan_cfi" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "phv", "name": "hdr.vlan_tag.cfi" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870919,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_5",
-      "handle": 1879048203,
-      "name": "cond-5",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 39, "true": 38 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "FabricIngress.filtering.fwd_classifier",
-            "true": "tbl_act_5"
-          },
-          "logical_table_id": 6,
-          "stage_number": 2,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.vlan_tag.$valid", "start_bit": 3, "bit_width": 1 } ],
-      "condition": "(hdr.vlan_tag.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777231,
-      "name": "FabricIngress.filtering.fwd_classifier",
-      "table_type": "match",
-      "size": 128,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 512,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 7,
-            "has_attached_gateway": false,
-            "default_next_table": 40,
-            "pack_format": [
-              {
-                "table_word_width": 141,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 3,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--version--",
-                        "lsb_mem_word_offset": 43,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "version",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_payload_1--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_1--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_payload_2--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_2--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 32,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ig_port",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "ig_port",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ip_eth_type",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ip_eth_type",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_type",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_type",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 41,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 24,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 41,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 28,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 26
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 26,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 7
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": {
-              "memory_type": "tcam",
-              "memory_units_and_vpns": [ { "memory_units": [ 0, 1, 2 ], "vpns": [ 0 ] } ],
-              "spare_bank_memory_unit": 2
-            },
-            "result_physical_buses": [ 0 ],
-            "ternary_indirection_stage_table": {
-              "action_format": [
-                {
-                  "action_name": "FabricIngress.filtering.set_forwarding_type",
-                  "action_handle": 536870924,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 40,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 70,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_16",
-                      "next_table_logical_id": 8,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ],
-              "memory_resource_allocation": null,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "entries": [ { "entry_number": 0, "fields": [] } ],
-                  "table_word_width": 0,
-                  "number_memory_units_per_table_word": 0
-                }
-              ],
-              "logical_table_id": 7,
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554433,
-          "name": "FabricIngress.filtering.fwd_classifier$action"
-        }
-      ],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 67108865,
-          "name": "FabricIngress.filtering.fwd_classifier_counter"
-        }
-      ],
-      "stateful_table_refs": [],
-      "default_action_handle": 536870924,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "ig_port",
-          "global_name": "ig_intr_md.ingress_port",
-          "start_bit": 0,
-          "bit_width": 9,
-          "bit_width_full": 9,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "ig_intr_md",
-          "field_name": "ingress_port"
-        },
-        {
-          "name": "eth_dst",
-          "global_name": "hdr.ethernet.dst_addr",
-          "start_bit": 0,
-          "bit_width": 48,
-          "bit_width_full": 48,
-          "position": 1,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "hdr.ethernet",
-          "field_name": "dst_addr"
-        },
-        {
-          "name": "eth_type",
-          "global_name": "hdr.eth_type.value",
-          "start_bit": 0,
-          "bit_width": 16,
-          "bit_width_full": 16,
-          "position": 2,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "hdr.eth_type",
-          "field_name": "value"
-        },
-        {
-          "name": "ip_eth_type",
-          "global_name": "fabric_metadata.ip_eth_type",
-          "start_bit": 0,
-          "bit_width": 16,
-          "bit_width_full": 16,
-          "position": 3,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "fabric_metadata",
-          "field_name": "ip_eth_type"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "actions": [
-        {
-          "name": "FabricIngress.filtering.set_forwarding_type",
-          "handle": 536870924,
-          "primitives": [
-            {
-              "name": "CountPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricIngress.filtering.fwd_classifier_counter"
-              }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.fwd_type" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "action_param", "name": "fwd_type" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_src_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ipv4_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.next_id" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "compiler_generated_meta.mirror_id" },
-              "dst_mask": { "type": "immediate", "name": "1023" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "compiler_generated_meta.mirror_source" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "0" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [
-            {
-              "name": "fwd_type",
-              "start_bit": 0,
-              "position": 0,
-              "default_value": "0x0",
-              "bit_width": 3
-            }
-          ],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 67108865,
-      "name": "FabricIngress.filtering.fwd_classifier_counter",
-      "table_type": "statistics",
-      "size": 1024,
-      "stage_tables": [
-        {
-          "stage_number": 2,
-          "size": 1024,
-          "stage_table_type": "statistics",
-          "logical_table_id": 7,
-          "pack_format": [
-            {
-              "table_word_width": 128,
-              "memory_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 78 ], "vpns": [ 0 ] } ],
-            "spare_bank_memory_unit": 79
-          },
-          "stats_alu_index": 3
-        }
-      ],
-      "how_referenced": "direct",
-      "enable_pfe": false,
-      "pfe_bit_position": 0,
-      "byte_counter_resolution": 64,
-      "packet_counter_resolution": 64,
-      "statistics_type": "packets_and_bytes"
-    },
-    {
-      "direction": "ingress",
-      "handle": 33554433,
-      "name": "FabricIngress.filtering.fwd_classifier$action",
-      "table_type": "action",
-      "size": 16384,
-      "stage_tables": [
-        {
-          "stage_number": 2,
-          "size": 16384,
-          "stage_table_type": "action_data",
-          "logical_table_id": 7,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 16,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 15,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 120,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 123,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 14,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 13,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 104,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 12,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 99,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 11,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 88,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 91,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 10,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 9,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 72,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 8,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 7,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 56,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 59,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 6,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 5,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 40,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 43,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 4,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 35,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 3,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 24,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 27,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 2,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 8,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "fwd_type"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "--padding_3_7--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870924
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricIngress.filtering.set_forwarding_type",
-          "handle": 536870924,
-          "p4_parameters": [
-            {
-              "name": "fwd_type",
-              "start_bit": 0,
-              "position": 0,
-              "bit_width": 3
-            }
-          ]
-        }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777232,
-      "name": "tbl_act_16",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 8,
-            "has_attached_gateway": false,
-            "default_next_table": 41,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 3 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 2,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_16",
-                  "action_handle": 536870969,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 41,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 71,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_6",
-                      "next_table_logical_id": 9,
-                      "next_table_stage_no": 2
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_16",
-          "handle": 536870969,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "ig_intr_md_from_prsr.global_tstamp" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "phv", "name": "ig_intr_md_from_prsr.global_tstamp" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870969,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777233,
-      "name": "tbl_act_6",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 2,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 9,
-            "has_attached_gateway": true,
-            "default_next_table": 48,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 2 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 2,
+              "stage_number": 0,
               "stage_table_type": "ternary_indirection",
               "size": 0,
               "pack_format": [
@@ -106381,19 +95274,13 @@
               "action_format": [
                 {
                   "action_name": "act_6",
-                  "action_handle": 536870920,
+                  "action_handle": 536870967,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 48,
+                  "next_table_full": 255,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 72,
-                  "next_tables": [
-                    {
-                      "next_table_name": "",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 3
-                    }
-                  ],
+                  "vliw_instruction_full": 64,
+                  "next_tables": [],
                   "immediate_fields": []
                 }
               ]
@@ -106410,16 +95297,8 @@
       "actions": [
         {
           "name": "act_6",
-          "handle": 536870920,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.mpls_ttl" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "immediate", "name": "65" }
-            }
-          ],
+          "handle": 536870967,
+          "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
           "is_compiler_added_action": false,
@@ -106438,7 +95317,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870920,
+      "default_action_handle": 536870967,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -106449,42 +95328,48 @@
       "static_entries": []
     },
     {
-      "direction": "ingress",
-      "attached_to": "tbl_act_6",
-      "handle": 1879048204,
-      "name": "cond-6",
+      "direction": "egress",
+      "attached_to": "tbl_act_7",
+      "handle": 1879048193,
+      "name": "cond-13",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 48, "true": 41 },
-          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 4, "true": 3 },
+          "memory_resource_allocation": { "memory_unit": 4, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "", "true": "tbl_act_6" },
-          "logical_table_id": 9,
-          "stage_number": 2,
+          "next_table_names": { "false": "tbl_act_8", "true": "tbl_act_7" },
+          "logical_table_id": 3,
+          "stage_number": 0,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.mpls.$valid", "start_bit": 6, "bit_width": 1 } ],
-      "condition": "(!(hdr.mpls.$valid == 1))",
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.is_controller_packet_out",
+          "start_bit": 0,
+          "bit_width": 1
+        }
+      ],
+      "condition": "(fabric_metadata.is_controller_packet_out == 1)",
       "size": 0
     },
     {
       "direction": "egress",
-      "handle": 16777258,
-      "name": "tbl_act_27",
+      "handle": 16777242,
+      "name": "tbl_act_8",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 2,
+            "stage_number": 0,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 10,
+            "logical_table_id": 4,
             "has_attached_gateway": true,
-            "default_next_table": 53,
+            "default_next_table": 255,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -106519,9 +95404,9 @@
               }
             ],
             "memory_resource_allocation": null,
-            "result_physical_buses": [ 9 ],
+            "result_physical_buses": [ 3 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 2,
+              "stage_number": 0,
               "stage_table_type": "ternary_indirection",
               "size": 0,
               "pack_format": [
@@ -107337,20 +96222,14 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_27",
-                  "action_handle": 536870989,
+                  "action_name": "act_8",
+                  "action_handle": 536870968,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 53,
+                  "next_table_full": 255,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_28",
-                      "next_table_logical_id": 5,
-                      "next_table_stage_no": 3
-                    }
-                  ],
+                  "vliw_instruction_full": 66,
+                  "next_tables": [],
                   "immediate_fields": []
                 }
               ]
@@ -107366,18 +96245,19 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_27",
-          "handle": 536870989,
+          "name": "act_8",
+          "handle": 536870968,
           "primitives": [
             {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.packet_in.$valid" }
+            },
+            {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": {
-                "type": "phv",
-                "name": "process_int_main_process_int_transit_hasReturned"
-              },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
+              "dst": { "type": "phv", "name": "hdr.packet_in.ingress_port" },
+              "dst_mask": { "type": "immediate", "name": "511" },
+              "src1": { "type": "phv", "name": "ig_intr_md.ingress_port" }
             }
           ],
           "indirect_resources": [],
@@ -107398,7 +96278,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870989,
+      "default_action_handle": 536870968,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -107410,12275 +96290,72 @@
     },
     {
       "direction": "egress",
-      "attached_to": "tbl_act_27",
-      "handle": 1879048205,
-      "name": "cond-33",
+      "attached_to": "tbl_act_8",
+      "handle": 1879048194,
+      "name": "cond-14",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 53, "true": 42 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 5, "true": 4 },
+          "memory_resource_allocation": { "memory_unit": 3, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "tbl_act_28", "true": "tbl_act_27" },
-          "logical_table_id": 10,
-          "stage_number": 2,
+          "next_table_names": { "false": "", "true": "tbl_act_8" },
+          "logical_table_id": 4,
+          "stage_number": 0,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        { "name": "eg_intr_md.egress_port", "start_bit": 0, "bit_width": 8 },
+        { "name": "eg_intr_md.egress_port", "start_bit": 8, "bit_width": 1 }
+      ],
+      "condition": "(eg_intr_md.egress_port == 192)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "attached_to": "-",
+      "handle": 1879048195,
+      "name": "cond-22",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 8, "true": 6 },
+          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "", "true": "tbl_spgw_gtpu_encap" },
+          "logical_table_id": 5,
+          "stage_number": 0,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
       "condition_fields": [
         {
-          "name": "fabric_metadata.int_meta.transit",
-          "start_bit": 6,
+          "name": "fabric_metadata.spgw.skip_spgw",
+          "start_bit": 0,
           "bit_width": 1
         }
       ],
-      "condition": "(fabric_metadata.int_meta.transit == 0)",
+      "condition": "(fabric_metadata.spgw.skip_spgw == 0)",
       "size": 0
     },
     {
-      "direction": "ingress",
-      "attached_to": "-",
-      "handle": 1879048206,
-      "name": "cond-8",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 52, "true": 49 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "FabricIngress.filtering.ingress_port_vlan",
-            "true": "FabricIngress.spgw_ingress.uplink_pdr_lookup"
-          },
-          "logical_table_id": 0,
-          "stage_number": 3,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "spgw_ingress_hasReturned", "start_bit": 1, "bit_width": 1 } ],
-      "condition": "(!spgw_ingress_hasReturned)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777234,
-      "name": "FabricIngress.spgw_ingress.uplink_pdr_lookup",
-      "table_type": "match",
-      "size": 4096,
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554434,
-          "name": "FabricIngress.spgw_ingress.uplink_pdr_lookup$action"
-        }
-      ],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "default_action_handle": 536870933,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "tunnel_ipv4_dst",
-          "global_name": "fabric_metadata.spgw.tunnel_dst_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "fabric_metadata.spgw",
-          "field_name": "tunnel_dst_addr"
-        },
-        {
-          "name": "teid",
-          "global_name": "fabric_metadata.spgw.teid",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 1,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "fabric_metadata.spgw",
-          "field_name": "teid"
-        },
-        {
-          "name": "ue_addr",
-          "global_name": "hdr.ipv4.src_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 2,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "hdr.ipv4",
-          "field_name": "src_addr"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 3,
-            "size": 4096,
-            "stage_table_type": "hash_match",
-            "logical_table_id": 1,
-            "has_attached_gateway": true,
-            "default_next_table": 255,
-            "hash_functions": [
-              {
-                "hash_bits": [
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 5,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 8,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 11,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 12,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 15,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 16,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 20,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 21,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 22,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 23,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 25,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 30,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 31,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 34,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 12,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 46
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 35,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 101
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 36,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 41
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 53
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 37,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 40
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 42
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 47
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 54
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 55
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 56
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 58
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 59
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 61
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 97
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 38,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "tunnel_ipv4_dst",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 43
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 44
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 45
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 48
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 49
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 50
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 51
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 52
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 57
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 60
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 62
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 63
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "teid",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 98
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 39,
-                    "seed": 1
-                  }
-                ],
-                "hash_function_number": 0,
-                "ghost_bit_to_hash_bit": [
-                  [ 2, 13, 24, 35 ],
-                  [ 3, 14, 25, 36 ],
-                  [ 4, 15, 26, 37 ],
-                  [ 5, 16, 27, 38 ],
-                  [ 6, 17, 28, 39 ],
-                  [ 7, 18, 29, 30 ],
-                  [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ],
-                  [ 0, 11, 22, 33 ],
-                  [ 1, 12, 23, 34 ]
-                ],
-                "ghost_bit_info": [
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 0 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 1 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 2 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 3 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 4 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 5 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 6 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 7 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 8 },
-                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 9 }
-                ]
-              }
-            ],
-            "action_format": [
-              {
-                "action_name": "NoAction",
-                "action_handle": 536870933,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 4294967295,
-                "next_table_full": 52,
-                "vliw_instruction": -1,
-                "vliw_instruction_full": 64,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricIngress.filtering.ingress_port_vlan",
-                    "next_table_logical_id": 4,
-                    "next_table_stage_no": 3
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-                "action_handle": 536870932,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 52,
-                "vliw_instruction": 1,
-                "vliw_instruction_full": 65,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricIngress.filtering.ingress_port_vlan",
-                    "next_table_logical_id": 4,
-                    "next_table_stage_no": 3
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "ctr_id",
-                    "param_type": "parameter",
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 32
-                  }
-                ]
-              }
-            ],
-            "result_physical_buses": [ 15, 12 ],
-            "pack_format": [
-              {
-                "memory_word_width": 128,
-                "table_word_width": 128,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1
-              }
-            ],
-            "memory_resource_allocation": null,
-            "stash_allocation": {
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 32,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "immediate",
-                          "match_mode": "unused"
-                        },
-                        {
-                          "field_name": "tunnel_ipv4_dst",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 34,
-                          "start_bit": 10,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 6
-                        },
-                        {
-                          "field_name": "tunnel_ipv4_dst",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 40,
-                          "start_bit": 16,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "tunnel_ipv4_dst",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 48,
-                          "start_bit": 24,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "teid",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 56,
-                          "start_bit": 0,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "teid",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 64,
-                          "start_bit": 8,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "teid",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 72,
-                          "start_bit": 16,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "teid",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 80,
-                          "start_bit": 24,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 88,
-                          "start_bit": 0,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 96,
-                          "start_bit": 8,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 104,
-                          "start_bit": 16,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 112,
-                          "start_bit": 24,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action",
-                          "match_mode": "unused"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "num_stash_entries": 2,
-              "stash_entries": [
-                [
-                  {
-                    "stash_entry_id": 30,
-                    "stash_match_data_select": 1,
-                    "stash_hashbank_select": 1,
-                    "hash_function_id": 0
-                  }
-                ],
-                [
-                  {
-                    "stash_entry_id": 31,
-                    "stash_match_data_select": 1,
-                    "stash_hashbank_select": 1,
-                    "hash_function_id": 0
-                  }
-                ]
-              ]
-            },
-            "ways": [
-              {
-                "stage_number": 3,
-                "way_number": 0,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 34,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 48,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 72,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 96,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 104,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 112,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 33,
-                            "field_name": "--padding_33_33--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 124,
-                            "field_name": "--padding_124_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 0,
-                  "hash_entry_bit_hi": 9,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 91 ], "vpns": [ 0 ] } ]
-                }
-              },
-              {
-                "stage_number": 3,
-                "way_number": 1,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 34,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 48,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 72,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 96,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 104,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 112,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 33,
-                            "field_name": "--padding_33_33--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 124,
-                            "field_name": "--padding_124_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 10,
-                  "hash_entry_bit_hi": 19,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 92 ], "vpns": [ 1 ] } ]
-                }
-              },
-              {
-                "stage_number": 3,
-                "way_number": 2,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 34,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 48,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 72,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 96,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 104,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 112,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 33,
-                            "field_name": "--padding_33_33--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 124,
-                            "field_name": "--padding_124_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 20,
-                  "hash_entry_bit_hi": 29,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 74 ], "vpns": [ 2 ] } ]
-                }
-              },
-              {
-                "stage_number": 3,
-                "way_number": 3,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 120,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 34,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "tunnel_ipv4_dst",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 48,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 56,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 64,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 72,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "teid",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 80,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 88,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 96,
-                            "start_bit": 8,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 104,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 112,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 1,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 33,
-                            "field_name": "--padding_33_33--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 124,
-                            "field_name": "--padding_124_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 30,
-                  "hash_entry_bit_hi": 39,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 75 ], "vpns": [ 3 ] } ]
-                }
-              }
-            ]
-          }
-        ],
-        "match_type": "exact",
-        "uses_dynamic_key_masks": false
-      },
-      "actions": [
-        {
-          "name": "NoAction",
-          "handle": 536870933,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-          "handle": 536870932,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.pdr_hit" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ctr_id" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "ctr_id" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_id" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "far_id" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [
-            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
-            {
-              "name": "far_id",
-              "start_bit": 32,
-              "position": 1,
-              "bit_width": 32
-            }
-          ],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "FabricIngress.spgw_ingress.uplink_pdr_lookup",
-      "handle": 1879048207,
-      "name": "cond-9",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 50, "true": 49 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "tbl_act_12",
-            "true": "FabricIngress.spgw_ingress.uplink_pdr_lookup"
-          },
-          "logical_table_id": 1,
-          "stage_number": 3,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "fabric_metadata.spgw.direction",
-          "start_bit": 0,
-          "bit_width": 2
-        }
-      ],
-      "condition": "(fabric_metadata.spgw.direction == 1)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 33554434,
-      "name": "FabricIngress.spgw_ingress.uplink_pdr_lookup$action",
-      "table_type": "action",
-      "size": 4096,
-      "stage_tables": [
-        {
-          "stage_number": 3,
-          "size": 4096,
-          "stage_table_type": "action_data",
-          "logical_table_id": 1,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 4,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 3,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 120,
-                      "field_name": "far_id"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 2,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 88,
-                      "field_name": "far_id"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 56,
-                      "field_name": "far_id"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 24,
-                      "field_name": "far_id"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870932
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 4,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 3,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 2,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870933
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 89 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-          "handle": 536870932,
-          "p4_parameters": [
-            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
-            {
-              "name": "far_id",
-              "start_bit": 32,
-              "position": 1,
-              "bit_width": 32
-            }
-          ]
-        },
-        { "name": "NoAction", "handle": 536870933, "p4_parameters": [] }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777235,
-      "name": "tbl_act_12",
+      "direction": "egress",
+      "handle": 16777243,
+      "name": "tbl_spgw_gtpu_encap",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 3,
+            "stage_number": 0,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 2,
+            "logical_table_id": 6,
             "has_attached_gateway": true,
-            "default_next_table": 52,
+            "default_next_table": 7,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -119715,393 +96392,18 @@
             "memory_resource_allocation": null,
             "result_physical_buses": [ 2 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 3,
+              "stage_number": 0,
               "stage_table_type": "ternary_indirection",
               "size": 0,
               "pack_format": [
                 {
                   "memory_word_width": 128,
                   "table_word_width": 128,
-                  "entries_per_table_word": 32,
+                  "entries_per_table_word": 2,
                   "number_memory_units_per_table_word": 1,
                   "entries": [
                     {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
+                      "entry_number": 1,
                       "fields": [
                         {
                           "start_bit": 0,
@@ -120115,388 +96417,23 @@
                         },
                         {
                           "start_bit": 0,
-                          "field_width": 3,
+                          "field_width": 32,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
-                          "source": "zero",
+                          "source": "immediate",
                           "enable_pfe": false,
                           "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
+                          "field_name": "immediate"
                         },
                         {
                           "start_bit": 0,
-                          "field_width": 3,
+                          "field_width": 31,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
                           "source": "zero",
                           "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_33_63--"
                         }
                       ]
                     },
@@ -120515,13 +96452,23 @@
                         },
                         {
                           "start_bit": 0,
-                          "field_width": 3,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 31,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
                           "source": "zero",
                           "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_33_63--"
                         }
                       ]
                     }
@@ -120531,21 +96478,38 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_12",
-                  "action_handle": 536870936,
+                  "action_name": "FabricEgress.spgw.gtpu_encap",
+                  "action_handle": 536870979,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 52,
+                  "next_table_full": 7,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
+                  "vliw_instruction_full": 68,
                   "next_tables": [
                     {
-                      "next_table_name": "FabricIngress.filtering.ingress_port_vlan",
-                      "next_table_logical_id": 4,
-                      "next_table_stage_no": 3
+                      "next_table_name": "tbl_act_14",
+                      "next_table_logical_id": 7,
+                      "next_table_stage_no": 0
                     }
                   ],
-                  "immediate_fields": []
+                  "immediate_fields": [
+                    {
+                      "param_name": "constant_36",
+                      "param_type": "constant",
+                      "const_value": 36,
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 16
+                    },
+                    {
+                      "param_name": "constant_16",
+                      "param_type": "constant",
+                      "const_value": 16,
+                      "param_shift": 0,
+                      "dest_start": 16,
+                      "dest_width": 16
+                    }
+                  ]
                 }
               ]
             }
@@ -120560,15 +96524,127 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_12",
-          "handle": 536870936,
+          "name": "FabricEgress.spgw.gtpu_encap",
+          "handle": 536870979,
           "primitives": [
             {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu_ipv4.$valid" }
+            },
+            {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "spgw_ingress_hasReturned" },
+              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "immediate", "name": "4" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "immediate", "name": "5" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "src2": { "type": "immediate", "name": "36" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x1513" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "64" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.gtpu_ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "17" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu_udp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.gtpu_udp.dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "2152" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.gtpu_udp.len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.spgw.ipv4_len" },
+              "src2": { "type": "immediate", "name": "16" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.outer_gtpu.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.version" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "immediate", "name": "0x1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.pt" },
               "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
+              "src1": { "type": "immediate", "name": "0x1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.spare" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.ex_flag" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.seq_flag" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.npdu_flag" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.outer_gtpu.msgtype" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "0xff" }
             }
           ],
           "indirect_resources": [],
@@ -120589,7 +96665,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870936,
+      "default_action_handle": 536870979,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -120600,54 +96676,251 @@
       "static_entries": []
     },
     {
-      "direction": "ingress",
-      "attached_to": "tbl_act_12",
-      "handle": 1879048208,
-      "name": "cond-10",
+      "direction": "egress",
+      "attached_to": "tbl_spgw_gtpu_encap",
+      "handle": 1879048196,
+      "name": "cond-23",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 50, "true": 51 },
-          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 7, "true": 6 },
+          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": {
-            "false": "tbl_act_12",
-            "true": "FabricIngress.spgw_ingress.downlink_pdr_lookup"
-          },
-          "logical_table_id": 2,
-          "stage_number": 3,
+          "next_table_names": { "false": "tbl_act_14", "true": "tbl_spgw_gtpu_encap" },
+          "logical_table_id": 6,
+          "stage_number": 0,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
       "condition_fields": [
         {
-          "name": "fabric_metadata.spgw.direction",
-          "start_bit": 0,
-          "bit_width": 2
+          "name": "fabric_metadata.spgw.needs_gtpu_encap",
+          "start_bit": 4,
+          "bit_width": 1
         }
       ],
-      "condition": "(fabric_metadata.spgw.direction == 2)",
+      "condition": "(fabric_metadata.spgw.needs_gtpu_encap == 1)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 16777244,
+      "name": "tbl_act_14",
+      "table_type": "match",
+      "size": 8388608,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 0,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 7,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 0,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 0 ],
+            "action_format": [
+              {
+                "action_name": "act_14",
+                "action_handle": 536870980,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 8,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "next_tables": [
+                  {
+                    "next_table_name": "",
+                    "next_table_logical_id": 8,
+                    "next_table_stage_no": 0
+                  }
+                ],
+                "immediate_fields": []
+              }
+            ]
+          }
+        ],
+        "match_type": "match_with_no_key"
+      },
+      "actions": [
+        {
+          "name": "act_14",
+          "handle": 536870980,
+          "primitives": [
+            {
+              "name": "CountFromHashPrimitive",
+              "dst": { "type": "counter", "name": "FabricEgress.spgw.pdr_counter" },
+              "idx": {
+                "type": "hash",
+                "name": "hash_FabricEgress.spgw.pdr_counter",
+                "algorithm": "identity"
+              },
+              "hash_inputs": [ "fabric_metadata.spgw.ctr_id" ]
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": true,
+          "override_stat_addr_pfe": true,
+          "override_stat_full_addr": 524288,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536870980,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "indirect",
+          "handle": 67108876,
+          "name": "FabricEgress.spgw.pdr_counter"
+        }
+      ],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_14",
+      "handle": 1879048197,
+      "name": "cond-24",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 8, "true": 8 },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "", "true": "" },
+          "logical_table_id": 7,
+          "stage_number": 0,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.spgw.skip_egress_pdr_ctr",
+          "start_bit": 5,
+          "bit_width": 1
+        }
+      ],
+      "condition": "(fabric_metadata.spgw.skip_egress_pdr_ctr == 0)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 67108876,
+      "name": "FabricEgress.spgw.pdr_counter",
+      "table_type": "statistics",
+      "size": 2048,
+      "stage_tables": [
+        {
+          "stage_number": 0,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 7,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "indirect",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 64,
+      "packet_counter_resolution": 64,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "egress",
+      "attached_to": "-",
+      "handle": 1879048198,
+      "name": "cond-25",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 100, "true": 17 },
+          "memory_resource_allocation": { "memory_unit": 6, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "tbl_egress_next_set_mpls",
+            "true": "FabricEgress.process_int_main.process_int_source.tb_int_source"
+          },
+          "logical_table_id": 8,
+          "stage_number": 0,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        { "name": "ig_intr_md.ingress_port", "start_bit": 0, "bit_width": 8 },
+        { "name": "ig_intr_md.ingress_port", "start_bit": 8, "bit_width": 1 },
+        { "name": "eg_intr_md.egress_port", "start_bit": 16, "bit_width": 8 },
+        { "name": "eg_intr_md.egress_port", "start_bit": 24, "bit_width": 1 },
+        { "name": "hdr.udp.$valid", "start_bit": 32, "bit_width": 1 },
+        { "name": "hdr.tcp.$valid", "start_bit": 33, "bit_width": 1 }
+      ],
+      "condition": "(ig_intr_md.ingress_port != 192 && eg_intr_md.egress_port != 192 && (hdr.udp.$valid == 1 || hdr.tcp.$valid == 1))",
       "size": 0
     },
     {
       "direction": "ingress",
-      "handle": 16777236,
-      "name": "FabricIngress.spgw_ingress.downlink_pdr_lookup",
+      "handle": 16777219,
+      "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_gtpu",
       "table_type": "match",
-      "size": 4096,
+      "size": 4,
       "action_data_table_refs": [
         {
           "how_referenced": "direct",
-          "handle": 33554435,
-          "name": "FabricIngress.spgw_ingress.downlink_pdr_lookup$action"
+          "handle": 33554434,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_gtpu$action"
         }
       ],
       "selection_table_refs": [],
       "meter_table_refs": [],
       "statistics_table_refs": [],
       "stateful_table_refs": [],
-      "default_action_handle": 536870935,
+      "default_action_handle": 536870919,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -120655,27 +96928,48 @@
       "uses_range": false,
       "match_key_fields": [
         {
-          "name": "ue_addr",
-          "global_name": "hdr.ipv4.dst_addr",
+          "name": "hdr.inner_tcp.$valid",
           "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
+          "bit_width": 1,
+          "bit_width_full": 1,
           "position": 0,
           "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "hdr.ipv4",
-          "field_name": "dst_addr"
+          "is_valid": true,
+          "instance_name": "hdr.inner_tcp",
+          "field_name": "$valid"
+        },
+        {
+          "name": "hdr.inner_udp.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 1,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.inner_udp",
+          "field_name": "$valid"
+        },
+        {
+          "name": "hdr.inner_icmp.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 2,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.inner_icmp",
+          "field_name": "$valid"
         }
       ],
       "ap_bind_indirect_res_to_match": [],
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 3,
-            "size": 4096,
+            "stage_number": 1,
+            "size": 1024,
             "stage_table_type": "hash_match",
-            "logical_table_id": 3,
-            "has_attached_gateway": false,
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
             "default_next_table": 255,
             "hash_functions": [
               {
@@ -120684,63 +96978,9 @@
                     "bits_to_xor": [
                       {
                         "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "field_name": "hdr.inner_udp.$valid",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
                       }
                     ],
                     "hash_bit": 0,
@@ -120749,94 +96989,10 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
+                        "field_bit": 0,
+                        "field_name": "hdr.inner_tcp.$valid",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 1,
@@ -120845,3175 +97001,102 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
+                        "field_bit": 0,
+                        "field_name": "hdr.inner_icmp.$valid",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
                       }
                     ],
                     "hash_bit": 2,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 5,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 8,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 11,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 12,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 15,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 16,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 20,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 21,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 22,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 23,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 25,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 30,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 31,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 34,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 35,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 36,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 37,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 38,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "ue_addr",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 39,
                     "seed": 0
                   }
                 ],
-                "hash_function_number": 1,
-                "ghost_bit_to_hash_bit": [
-                  [ 0, 11, 22, 33 ],
-                  [ 1, 12, 23, 34 ],
-                  [ 2, 13, 24, 35 ],
-                  [ 3, 14, 25, 36 ],
-                  [ 4, 15, 26, 37 ],
-                  [ 5, 16, 27, 38 ],
-                  [ 6, 17, 28, 39 ],
-                  [ 7, 18, 29, 30 ],
-                  [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ]
-                ],
+                "hash_function_number": 0,
+                "ghost_bit_to_hash_bit": [ [ 2 ], [ 1 ], [ 0 ] ],
                 "ghost_bit_info": [
-                  { "field_name": "ue_addr", "bit_in_match_spec": 0 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 1 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 2 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 3 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 4 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 5 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 6 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 7 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 8 },
-                  { "field_name": "ue_addr", "bit_in_match_spec": 9 }
+                  {
+                    "field_name": "hdr.inner_icmp.$valid",
+                    "bit_in_match_spec": 0
+                  },
+                  {
+                    "field_name": "hdr.inner_tcp.$valid",
+                    "bit_in_match_spec": 0
+                  },
+                  {
+                    "field_name": "hdr.inner_udp.$valid",
+                    "bit_in_match_spec": 0
+                  }
                 ]
               }
             ],
             "action_format": [
               {
-                "action_name": "NoAction",
-                "action_handle": 536870935,
+                "action_name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_tcp",
+                "action_handle": 536870916,
                 "table_name": "--END_OF_PIPELINE--",
-                "next_table": 4294967295,
-                "next_table_full": 52,
-                "vliw_instruction": -1,
-                "vliw_instruction_full": 64,
+                "next_table": 0,
+                "next_table_full": 32,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 65,
                 "next_tables": [
                   {
-                    "next_table_name": "FabricIngress.filtering.ingress_port_vlan",
-                    "next_table_logical_id": 4,
-                    "next_table_stage_no": 3
+                    "next_table_name": "FabricIngress.spgw.downlink_pdrs",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 2
                   }
                 ],
                 "immediate_fields": []
               },
               {
-                "action_name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-                "action_handle": 536870934,
+                "action_name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_udp",
+                "action_handle": 536870917,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
-                "next_table_full": 52,
-                "vliw_instruction": 0,
+                "next_table_full": 32,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricIngress.spgw.downlink_pdrs",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 2
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_icmp",
+                "action_handle": 536870918,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 32,
+                "vliw_instruction": 3,
                 "vliw_instruction_full": 68,
                 "next_tables": [
                   {
-                    "next_table_name": "FabricIngress.filtering.ingress_port_vlan",
-                    "next_table_logical_id": 4,
-                    "next_table_stage_no": 3
+                    "next_table_name": "FabricIngress.spgw.downlink_pdrs",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 2
                   }
                 ],
-                "immediate_fields": [
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_unknown",
+                "action_handle": 536870919,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 32,
+                "vliw_instruction": 4,
+                "vliw_instruction_full": 70,
+                "next_tables": [
                   {
-                    "param_name": "ctr_id",
-                    "param_type": "parameter",
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 32
+                    "next_table_name": "FabricIngress.spgw.downlink_pdrs",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 2
                   }
-                ]
+                ],
+                "immediate_fields": []
               }
             ],
             "result_physical_buses": [ 14 ],
@@ -124039,50 +97122,14 @@
                       "fields": [
                         {
                           "start_bit": 0,
-                          "field_width": 32,
+                          "field_width": 3,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
-                          "source": "immediate",
+                          "source": "instr",
                           "enable_pfe": false,
                           "lsb_mem_word_offset": 0,
-                          "field_name": "immediate",
+                          "field_name": "action",
                           "match_mode": "unused"
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 50,
-                          "start_bit": 10,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 6
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 32,
-                          "start_bit": 16,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        },
-                        {
-                          "field_name": "ue_addr",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 40,
-                          "start_bit": 24,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
                         }
                       ]
                     }
@@ -124111,7 +97158,7 @@
             },
             "ways": [
               {
-                "stage_number": 3,
+                "stage_number": 1,
                 "way_number": 0,
                 "stage_table_type": "hash_way",
                 "size": 1024,
@@ -124127,13 +97174,13 @@
                         "fields": [
                           {
                             "start_bit": 0,
-                            "field_width": 32,
+                            "field_width": 3,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
-                            "source": "immediate",
+                            "source": "instr",
                             "enable_pfe": false,
                             "lsb_mem_word_offset": 0,
-                            "field_name": "immediate",
+                            "field_name": "action",
                             "match_mode": "unused"
                           },
                           {
@@ -124148,61 +97195,14 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
                             "start_bit": 0,
-                            "field_width": 2,
+                            "field_width": 109,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
                             "source": "zero",
                             "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
+                            "lsb_mem_word_offset": 3,
+                            "field_name": "--padding_3_111--",
                             "match_mode": "unused"
                           },
                           {
@@ -124231,372 +97231,6 @@
                   "number_select_bits": 0,
                   "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
                 }
-              },
-              {
-                "stage_number": 3,
-                "way_number": 1,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 2,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 10,
-                  "hash_entry_bit_hi": 19,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
-                }
-              },
-              {
-                "stage_number": 3,
-                "way_number": 2,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 2,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 20,
-                  "hash_entry_bit_hi": 29,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
-                }
-              },
-              {
-                "stage_number": 3,
-                "way_number": 3,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 50,
-                            "start_bit": 10,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 6
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 16,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "field_name": "ue_addr",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 40,
-                            "start_bit": 24,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 2,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_49--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 56,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 56,
-                            "field_name": "--padding_56_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 30,
-                  "hash_entry_bit_hi": 39,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 3 ] } ]
-                }
               }
             ]
           }
@@ -124606,2565 +97240,456 @@
       },
       "actions": [
         {
-          "name": "NoAction",
-          "handle": 536870935,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-          "handle": 536870934,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_tcp",
+          "handle": 536870916,
           "primitives": [
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.pdr_hit" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x800" }
             },
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ctr_id" },
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
               "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "ctr_id" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
             },
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_id" },
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
               "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "far_id" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [
-            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
-            {
-              "name": "far_id",
-              "start_bit": 32,
-              "position": 1,
-              "bit_width": 32
-            }
-          ],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 33554435,
-      "name": "FabricIngress.spgw_ingress.downlink_pdr_lookup$action",
-      "table_type": "action",
-      "size": 4096,
-      "stage_tables": [
-        {
-          "stage_number": 3,
-          "size": 4096,
-          "stage_table_type": "action_data",
-          "logical_table_id": 3,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 4,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 3,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 120,
-                      "field_name": "far_id"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 2,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 88,
-                      "field_name": "far_id"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 56,
-                      "field_name": "far_id"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "far_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 24,
-                      "field_name": "far_id"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870934
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 4,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 3,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 2,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_31--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870935
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 93 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-          "handle": 536870934,
-          "p4_parameters": [
-            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
-            {
-              "name": "far_id",
-              "start_bit": 32,
-              "position": 1,
-              "bit_width": 32
-            }
-          ]
-        },
-        { "name": "NoAction", "handle": 536870935, "p4_parameters": [] }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777237,
-      "name": "FabricIngress.filtering.ingress_port_vlan",
-      "table_type": "match",
-      "size": 2048,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 3,
-            "size": 2048,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 4,
-            "has_attached_gateway": false,
-            "default_next_table": 64,
-            "pack_format": [
-              {
-                "table_word_width": 47,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--version--",
-                        "lsb_mem_word_offset": 43,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "version",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "ig_port",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 9
-                      },
-                      {
-                        "field_name": "vlan_is_valid",
-                        "lsb_mem_word_offset": 20,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "vlan_id",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "vlan_id",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 10,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 10
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 21,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 29,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 41,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": {
-              "memory_type": "tcam",
-              "memory_units_and_vpns": [
-                { "memory_units": [ 0 ], "vpns": [ 0 ] },
-                { "memory_units": [ 1 ], "vpns": [ 1 ] },
-                { "memory_units": [ 2 ], "vpns": [ 2 ] },
-                { "memory_units": [ 3 ], "vpns": [ 3 ] }
-              ],
-              "spare_bank_memory_unit": 3
-            },
-            "result_physical_buses": [ 0 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 3,
-              "stage_table_type": "ternary_indirection",
-              "size": 4096,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 4,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 2,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 16,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 98,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 14,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 114,
-                          "field_name": "--padding_18_31--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 2,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 16,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 66,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 14,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 82,
-                          "field_name": "--padding_18_31--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 2,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 16,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 34,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 14,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 50,
-                          "field_name": "--padding_18_31--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 2,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 16,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 2,
-                          "field_name": "immediate"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 14,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 18,
-                          "field_name": "--padding_18_31--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": {
-                "memory_type": "sram",
-                "memory_units_and_vpns": [ { "memory_units": [ 2 ], "vpns": [ 0 ] } ],
-                "spare_bank_memory_unit": 2
-              },
-              "action_format": [
-                {
-                  "action_name": "FabricIngress.filtering.deny",
-                  "action_handle": 536870921,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 64,
-                  "vliw_instruction": 0,
-                  "vliw_instruction_full": 67,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_15",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 4
-                    }
-                  ],
-                  "immediate_fields": []
-                },
-                {
-                  "action_name": "FabricIngress.filtering.permit",
-                  "action_handle": 536870922,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 64,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 64,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_15",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 4
-                    }
-                  ],
-                  "immediate_fields": []
-                },
-                {
-                  "action_name": "FabricIngress.filtering.permit_with_internal_vlan",
-                  "action_handle": 536870923,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 64,
-                  "vliw_instruction": 2,
-                  "vliw_instruction_full": 69,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_15",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 4
-                    }
-                  ],
-                  "immediate_fields": [
-                    {
-                      "param_name": "vlan_id",
-                      "param_type": "parameter",
-                      "param_shift": 0,
-                      "dest_start": 8,
-                      "dest_width": 8
-                    },
-                    {
-                      "param_name": "vlan_id",
-                      "param_type": "parameter",
-                      "param_shift": 8,
-                      "dest_start": 0,
-                      "dest_width": 4
-                    }
-                  ]
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 67108866,
-          "name": "FabricIngress.filtering.ingress_port_vlan_counter"
-        }
-      ],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "FabricIngress.filtering.deny",
-          "handle": 536870921,
-          "primitives": [
-            {
-              "name": "CountPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricIngress.filtering.ingress_port_vlan_counter"
-              }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
             },
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.skip_forwarding" },
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
               "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
             },
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.skip_next" },
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.tcp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.seq_no" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.seq_no" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.ack_no" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.ack_no" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.data_offset" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.data_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.res" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.res" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.ecn" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.ctrl" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.ctrl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.window" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.window" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.urgent_ptr" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.urgent_ptr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_tcp.$valid" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_udp",
+          "handle": 536870917,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x800" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
               "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricIngress.filtering.permit",
-          "handle": 536870922,
-          "primitives": [
-            {
-              "name": "CountPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricIngress.filtering.ingress_port_vlan_counter"
-              }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "disallowed_as_default_action_reason": "",
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricIngress.filtering.permit_with_internal_vlan",
-          "handle": 536870923,
-          "primitives": [
-            {
-              "name": "CountPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricIngress.filtering.ingress_port_vlan_counter"
-              }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
             },
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.vlan_id" },
-              "dst_mask": { "type": "immediate", "name": "4095" },
-              "src1": { "type": "action_param", "name": "vlan_id" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "disallowed_as_default_action_reason": "",
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [
-            {
-              "name": "vlan_id",
-              "start_bit": 0,
-              "position": 0,
-              "bit_width": 12
-            }
-          ],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870921,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "ig_port",
-          "global_name": "ig_intr_md.ingress_port",
-          "start_bit": 0,
-          "bit_width": 9,
-          "bit_width_full": 9,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "ig_intr_md",
-          "field_name": "ingress_port"
-        },
-        {
-          "name": "vlan_is_valid",
-          "global_name": "hdr.vlan_tag.$valid",
-          "start_bit": 0,
-          "bit_width": 1,
-          "bit_width_full": 1,
-          "position": 1,
-          "match_type": "exact",
-          "is_valid": true,
-          "instance_name": "hdr.vlan_tag",
-          "field_name": "$valid"
-        },
-        {
-          "name": "vlan_id",
-          "global_name": "hdr.vlan_tag.vlan_id",
-          "start_bit": 0,
-          "bit_width": 12,
-          "bit_width_full": 12,
-          "position": 2,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "hdr.vlan_tag",
-          "field_name": "vlan_id"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "handle": 67108866,
-      "name": "FabricIngress.filtering.ingress_port_vlan_counter",
-      "table_type": "statistics",
-      "size": 2048,
-      "stage_tables": [
-        {
-          "stage_number": 3,
-          "size": 2048,
-          "stage_table_type": "statistics",
-          "logical_table_id": 4,
-          "pack_format": [
-            {
-              "table_word_width": 128,
-              "memory_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [
-              { "memory_units": [ 78 ], "vpns": [ 0 ] },
-              { "memory_units": [ 79 ], "vpns": [ 1 ] }
-            ],
-            "spare_bank_memory_unit": 80
-          },
-          "stats_alu_index": 3
-        }
-      ],
-      "how_referenced": "direct",
-      "enable_pfe": false,
-      "pfe_bit_position": 0,
-      "byte_counter_resolution": 64,
-      "packet_counter_resolution": 64,
-      "statistics_type": "packets_and_bytes"
-    },
-    {
-      "direction": "egress",
-      "handle": 16777259,
-      "name": "tbl_act_28",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 3,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 5,
-            "has_attached_gateway": true,
-            "default_next_table": 54,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 1 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 3,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_29",
-                  "action_handle": 536871024,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 54,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
-                      "next_table_logical_id": 6,
-                      "next_table_stage_no": 3
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_29",
-          "handle": 536871024,
-          "primitives": [
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.int_header.total_hop_cnt" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.int_header.total_hop_cnt" },
-              "src2": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536871024,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_act_28",
-      "handle": 1879048209,
-      "name": "cond-34",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 85, "true": 53 },
-          "memory_resource_allocation": { "memory_unit": 12, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_egress_next_set_mpls", "true": "tbl_act_28" },
-          "logical_table_id": 5,
-          "stage_number": 3,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "process_int_main_process_int_transit_hasReturned",
-          "start_bit": 7,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(!process_int_main_process_int_transit_hasReturned)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777260,
-      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
-      "table_type": "match",
-      "size": 1024,
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554444,
-          "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003$action"
-        }
-      ],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "default_action_handle": 536871006,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "hdr.int_header.instruction_mask_0003",
-          "start_bit": 0,
-          "bit_width": 4,
-          "bit_width_full": 4,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "hdr.int_header",
-          "field_name": "instruction_mask_0003"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 3,
-            "size": 1024,
-            "stage_table_type": "hash_match",
-            "logical_table_id": 6,
-            "has_attached_gateway": false,
-            "default_next_table": 255,
-            "hash_functions": [
-              {
-                "hash_bits": [
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "hdr.int_header.instruction_mask_0003",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 76
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "hdr.int_header.instruction_mask_0003",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 77
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "hdr.int_header.instruction_mask_0003",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 78
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "hdr.int_header.instruction_mask_0003",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 79
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 0
-                  }
-                ],
-                "hash_function_number": 2,
-                "ghost_bit_to_hash_bit": [ [ 0 ], [ 1 ], [ 2 ], [ 3 ] ],
-                "ghost_bit_info": [
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0003",
-                    "bit_in_match_spec": 0
-                  },
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0003",
-                    "bit_in_match_spec": 1
-                  },
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0003",
-                    "bit_in_match_spec": 2
-                  },
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0003",
-                    "bit_in_match_spec": 3
-                  }
-                ]
-              }
-            ],
-            "action_format": [
-              {
-                "action_name": "NoAction",
-                "action_handle": 536871006,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 4294967295,
-                "next_table_full": 66,
-                "vliw_instruction": -1,
-                "vliw_instruction_full": 67,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
-                "action_handle": 536870990,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 0,
-                "vliw_instruction_full": 64,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
-                "action_handle": 536870991,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 2,
-                "vliw_instruction_full": 66,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
-                "action_handle": 536870992,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 4,
-                "vliw_instruction_full": 68,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
-                "action_handle": 536870993,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 6,
-                "vliw_instruction_full": 70,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
-                "action_handle": 536870994,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 8,
-                "vliw_instruction_full": 72,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
-                "action_handle": 536870995,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 10,
-                "vliw_instruction_full": 74,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
-                "action_handle": 536870996,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 12,
-                "vliw_instruction_full": 76,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
-                "action_handle": 536870997,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 14,
-                "vliw_instruction_full": 78,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
-                "action_handle": 536870998,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 16,
-                "vliw_instruction_full": 80,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
-                "action_handle": 536870999,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 18,
-                "vliw_instruction_full": 82,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
-                "action_handle": 536871000,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 20,
-                "vliw_instruction_full": 84,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
-                "action_handle": 536871001,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 22,
-                "vliw_instruction_full": 86,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
-                "action_handle": 536871002,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 24,
-                "vliw_instruction_full": 88,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
-                "action_handle": 536871003,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 26,
-                "vliw_instruction_full": 90,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
-                "action_handle": 536871004,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 28,
-                "vliw_instruction_full": 92,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
-                "action_handle": 536871005,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 66,
-                "vliw_instruction": 30,
-                "vliw_instruction_full": 94,
-                "next_tables": [
-                  {
-                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 4
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_16",
-                    "param_type": "constant",
-                    "const_value": 16,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              }
-            ],
-            "result_physical_buses": [ 13 ],
-            "pack_format": [
-              {
-                "memory_word_width": 128,
-                "table_word_width": 128,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1
-              }
-            ],
-            "memory_resource_allocation": null,
-            "stash_allocation": {
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 16,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 6,
-                          "field_name": "immediate",
-                          "match_mode": "unused"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 6,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action",
-                          "match_mode": "unused"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "num_stash_entries": 2,
-              "stash_entries": [
-                [
-                  {
-                    "stash_entry_id": 24,
-                    "stash_match_data_select": 1,
-                    "stash_hashbank_select": 1,
-                    "hash_function_id": 0
-                  }
-                ],
-                [
-                  {
-                    "stash_entry_id": 25,
-                    "stash_match_data_select": 1,
-                    "stash_hashbank_select": 1,
-                    "hash_function_id": 0
-                  }
-                ]
-              ]
-            },
-            "ways": [
-              {
-                "stage_number": 3,
-                "way_number": 0,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 6,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 16,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 6,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 90,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 22,
-                            "field_name": "--padding_22_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 0,
-                  "hash_entry_bit_hi": 9,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 76 ], "vpns": [ 0 ] } ]
-                }
-              }
-            ]
-          }
-        ],
-        "match_type": "exact",
-        "uses_dynamic_key_masks": false
-      },
-      "actions": [
-        {
-          "name": "NoAction",
-          "handle": 536871006,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
-          "handle": 536870990,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
-          "handle": 536870991,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
               "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.checksum" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_udp.$valid" }
             }
           ],
           "indirect_resources": [],
-          "allowed_as_default_action": true,
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
           "is_compiler_added_action": false,
           "constant_default_action": false,
           "p4_parameters": [],
@@ -127180,32 +97705,215 @@
           "is_action_meter_color_aware": false
         },
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
-          "handle": 536870992,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_icmp",
+          "handle": 536870918,
           "primitives": [
             {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
               "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
+              "src1": { "type": "immediate", "name": "0x800" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.icmp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.icmp_type" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.icmp_type" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.icmp_code" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.icmp_code" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.identifier" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.identifier" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.sequence_number" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.sequence_number" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.timestamp" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.timestamp" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_icmp.$valid" }
             }
           ],
           "indirect_resources": [],
-          "allowed_as_default_action": true,
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
           "is_compiler_added_action": false,
           "constant_default_action": false,
           "p4_parameters": [],
@@ -127221,588 +97929,160 @@
           "is_action_meter_color_aware": false
         },
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
-          "handle": 536870993,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_unknown",
+          "handle": 536870919,
           "primitives": [
             {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
               "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
-          "handle": 536870994,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+              "src1": { "type": "immediate", "name": "0x800" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
               "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
               "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
-          "handle": 536870995,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
             },
             {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
               "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
-          "handle": 536870996,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
               "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
               "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
-          "handle": 536870997,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
             },
             {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
             },
             {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
-          "handle": 536870998,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
             },
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
-          "handle": 536870999,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
-          "handle": 536871000,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
-          "handle": 536871001,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
-          "handle": 536871002,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
-          "handle": 536871003,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
-          "handle": 536871004,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
-          "handle": 536871005,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "4" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "16" }
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
             }
           ],
           "indirect_resources": [],
@@ -127826,209 +98106,81 @@
         {
           "priority": 0,
           "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x0"
-            }
+            { "field_name": "hdr.inner_tcp.$valid", "value": "0x1" },
+            { "field_name": "hdr.inner_udp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_icmp.$valid", "value": "0x0" }
           ],
-          "action_handle": 536870990,
+          "action_handle": 536870916,
           "is_default_entry": false,
           "action_parameters_values": []
         },
         {
           "priority": 1,
           "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x1"
-            }
+            { "field_name": "hdr.inner_tcp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_udp.$valid", "value": "0x1" },
+            { "field_name": "hdr.inner_icmp.$valid", "value": "0x0" }
           ],
-          "action_handle": 536870991,
+          "action_handle": 536870917,
           "is_default_entry": false,
           "action_parameters_values": []
         },
         {
           "priority": 2,
           "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x2"
-            }
+            { "field_name": "hdr.inner_tcp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_udp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_icmp.$valid", "value": "0x1" }
           ],
-          "action_handle": 536870992,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 3,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x3"
-            }
-          ],
-          "action_handle": 536870993,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 4,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x4"
-            }
-          ],
-          "action_handle": 536870994,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 5,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x5"
-            }
-          ],
-          "action_handle": 536870995,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 6,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x6"
-            }
-          ],
-          "action_handle": 536870996,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 7,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x7"
-            }
-          ],
-          "action_handle": 536870997,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 8,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x8"
-            }
-          ],
-          "action_handle": 536870998,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 9,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0x9"
-            }
-          ],
-          "action_handle": 536870999,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 10,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0xa"
-            }
-          ],
-          "action_handle": 536871000,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 11,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0xb"
-            }
-          ],
-          "action_handle": 536871001,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 12,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0xc"
-            }
-          ],
-          "action_handle": 536871002,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 13,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0xd"
-            }
-          ],
-          "action_handle": 536871003,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 14,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0xe"
-            }
-          ],
-          "action_handle": 536871004,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 15,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0003",
-              "value": "0xf"
-            }
-          ],
-          "action_handle": 536871005,
+          "action_handle": 536870918,
           "is_default_entry": false,
           "action_parameters_values": []
         }
       ]
     },
     {
-      "direction": "egress",
-      "handle": 33554444,
-      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003$action",
+      "direction": "ingress",
+      "attached_to": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_gtpu",
+      "handle": 1879048199,
+      "name": "cond-2",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 32, "true": 16 },
+          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "FabricIngress.spgw.downlink_pdrs",
+            "true": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_gtpu"
+          },
+          "logical_table_id": 0,
+          "stage_number": 1,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.spgw.src_iface",
+          "start_bit": 0,
+          "bit_width": 8
+        }
+      ],
+      "condition": "(fabric_metadata.spgw.src_iface == 3)",
+      "size": 0
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554434,
+      "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_gtpu$action",
       "table_type": "action",
       "size": 2048,
       "stage_tables": [
         {
-          "stage_number": 3,
+          "stage_number": 1,
           "size": 2048,
           "stage_table_type": "action_data",
-          "logical_table_id": 6,
+          "logical_table_id": 0,
           "pack_format": [
             {
               "memory_word_width": 128,
@@ -128041,588 +98193,24 @@
                   "fields": [
                     {
                       "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870990
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870991
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
                       "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
                       "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "--padding_44_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "--padding_48_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 43,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "--padding_44_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "--padding_48_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871000
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "--padding_17_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "--padding_44_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 43,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "--padding_17_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "--padding_44_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871001
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 64,
                       "field_name": "$constant0"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871002
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
                       "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 80,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 75,
                       "field_name": "$constant1"
                     },
                     {
@@ -128633,7 +98221,7 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 76,
+                      "lsb_mem_word_offset": 78,
                       "field_name": "$constant2"
                     },
                     {
@@ -128643,8 +98231,8 @@
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 80,
                       "field_name": "$constant3"
                     },
                     {
@@ -128666,476 +98254,18 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 110,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
                       "lsb_mem_word_offset": 112,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "--padding_13_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "--padding_17_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "--padding_45_47--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 43,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "--padding_13_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "--padding_17_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "--padding_45_47--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871003
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "--padding_13_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "--padding_45_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "--padding_48_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 43,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 11,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "--padding_13_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_42--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "--padding_45_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "--padding_48_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871004
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 107,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 111,
                       "field_name": "$constant6"
                     },
                     {
@@ -129150,13 +98280,23 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 2,
+                      "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 77,
-                      "field_name": "--padding_13_14--"
+                      "field_name": "--padding_13_13--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 79,
+                      "field_name": "--padding_15_15--"
                     },
                     {
                       "start_bit": 0,
@@ -129170,13 +98310,23 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 2,
+                      "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 109,
-                      "field_name": "--padding_45_46--"
+                      "field_name": "--padding_45_45--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 111,
+                      "field_name": "--padding_47_47--"
                     },
                     {
                       "start_bit": 0,
@@ -129200,8 +98350,19 @@
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 16,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 12,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 11,
                       "field_name": "$constant1"
                     },
                     {
@@ -129212,7 +98373,7 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 15,
+                      "lsb_mem_word_offset": 14,
                       "field_name": "$constant2"
                     },
                     {
@@ -129222,23 +98383,12 @@
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 12,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 16,
                       "field_name": "$constant3"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
                       "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
@@ -129246,17 +98396,28 @@
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
                       "lsb_mem_word_offset": 43,
-                      "field_name": "$constant5"
+                      "field_name": "$constant4"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 2,
+                      "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 47,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 46,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 48,
                       "field_name": "$constant6"
                     },
                     {
@@ -129271,13 +98432,23 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 2,
+                      "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 13,
-                      "field_name": "--padding_13_14--"
+                      "field_name": "--padding_13_13--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 15,
+                      "field_name": "--padding_15_15--"
                     },
                     {
                       "start_bit": 0,
@@ -129291,13 +98462,23 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 2,
+                      "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 45,
-                      "field_name": "--padding_45_46--"
+                      "field_name": "--padding_45_45--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 47,
+                      "field_name": "--padding_47_47--"
                     },
                     {
                       "start_bit": 0,
@@ -129312,7 +98493,7 @@
                   ]
                 }
               ],
-              "action_handle": 536871005
+              "action_handle": 536870918
             },
             {
               "memory_word_width": 128,
@@ -129325,846 +98506,25 @@
                   "fields": [
                     {
                       "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870992
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
+                      "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 64,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 76,
                       "field_name": "$constant0"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870993
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870994
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
                       "field_width": 1,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 12,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_11--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "--padding_13_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "--padding_17_43--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "--padding_45_47--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 12,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_11--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "--padding_13_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "--padding_17_43--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "--padding_45_47--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870995
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 12,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_11--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "--padding_13_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 28,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_43--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "--padding_45_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "--padding_48_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 12,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_11--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "--padding_13_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 28,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_43--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "--padding_45_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "--padding_48_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870996
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 12,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_11--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "--padding_13_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "--padding_17_43--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "--padding_45_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 12,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_11--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "--padding_13_14--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "--padding_17_43--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "--padding_45_46--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 15,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "--padding_49_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870997
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870998
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
                       "lsb_mem_word_offset": 75,
-                      "field_name": "$constant2"
+                      "field_name": "$constant1"
                     },
                     {
                       "start_bit": 0,
@@ -130174,7 +98534,18 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 107,
+                      "lsb_mem_word_offset": 71,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 79,
                       "field_name": "$constant3"
                     },
                     {
@@ -130185,58 +98556,100 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 112,
+                      "lsb_mem_word_offset": 103,
                       "field_name": "$constant4"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 11,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 107,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 111,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_10--"
+                      "field_name": "--padding_0_6--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 4,
+                      "field_width": 3,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_15--"
+                      "lsb_mem_word_offset": 72,
+                      "field_name": "--padding_8_10--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 26,
+                      "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "--padding_17_42--"
+                      "lsb_mem_word_offset": 77,
+                      "field_name": "--padding_13_14--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 4,
+                      "field_width": 23,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 108,
-                      "field_name": "--padding_44_47--"
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "--padding_16_38--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 15,
+                      "field_width": 3,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "--padding_49_63--"
+                      "lsb_mem_word_offset": 104,
+                      "field_name": "--padding_40_42--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 109,
+                      "field_name": "--padding_45_46--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 112,
+                      "field_name": "--padding_48_63--"
                     }
                   ]
                 },
@@ -130250,8 +98663,19 @@
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 16,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 12,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 11,
                       "field_name": "$constant1"
                     },
                     {
@@ -130262,7 +98686,7 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
+                      "lsb_mem_word_offset": 7,
                       "field_name": "$constant2"
                     },
                     {
@@ -130272,8 +98696,8 @@
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 43,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 15,
                       "field_name": "$constant3"
                     },
                     {
@@ -130284,63 +98708,105 @@
                       "source": "constant",
                       "enable_pfe": false,
                       "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 48,
+                      "lsb_mem_word_offset": 39,
                       "field_name": "$constant4"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 11,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 43,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 47,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_10--"
+                      "field_name": "--padding_0_6--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 4,
+                      "field_width": 3,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_15--"
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "--padding_8_10--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 26,
+                      "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "--padding_17_42--"
+                      "lsb_mem_word_offset": 13,
+                      "field_name": "--padding_13_14--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 4,
+                      "field_width": 23,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 44,
-                      "field_name": "--padding_44_47--"
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "--padding_16_38--"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 15,
+                      "field_width": 3,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "--padding_49_63--"
+                      "lsb_mem_word_offset": 40,
+                      "field_name": "--padding_40_42--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 45,
+                      "field_name": "--padding_45_46--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "--padding_48_63--"
                     }
                   ]
                 }
               ],
-              "action_handle": 536870999
+              "action_handle": 536870916
             },
             {
               "memory_word_width": 128,
@@ -130379,1079 +98845,100 @@
                   ]
                 }
               ],
-              "action_handle": 536871006
+              "action_handle": 536870917
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870919
             }
           ],
           "memory_resource_allocation": {
             "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 81 ], "vpns": [ 0 ] } ]
+            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
           }
         }
       ],
       "actions": [
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
-          "handle": 536870990,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_icmp",
+          "handle": 536870918,
           "p4_parameters": []
         },
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
-          "handle": 536870991,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_tcp",
+          "handle": 536870916,
           "p4_parameters": []
         },
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
-          "handle": 536871000,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_udp",
+          "handle": 536870917,
           "p4_parameters": []
         },
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
-          "handle": 536871001,
+          "name": "FabricIngress.spgw.decap_gtpu_from_dbuf.decap_inner_unknown",
+          "handle": 536870919,
           "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
-          "handle": 536871002,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
-          "handle": 536871003,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
-          "handle": 536871004,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
-          "handle": 536871005,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
-          "handle": 536870992,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
-          "handle": 536870993,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
-          "handle": 536870994,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
-          "handle": 536870995,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
-          "handle": 536870996,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
-          "handle": 536870997,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
-          "handle": 536870998,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
-          "handle": 536870999,
-          "p4_parameters": []
-        },
-        { "name": "NoAction", "handle": 536871006, "p4_parameters": [] }
+        }
       ],
       "static_entries": [],
       "how_referenced": "direct"
     },
     {
-      "direction": "ingress",
-      "handle": 16777238,
-      "name": "tbl_act_15",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 4,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 0,
-            "has_attached_gateway": true,
-            "default_next_table": 65,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 1 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 4,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_15",
-                  "action_handle": 536870942,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 65,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "FabricIngress.spgw_ingress.flexible_pdr_lookup",
-                      "next_table_logical_id": 1,
-                      "next_table_stage_no": 4
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_15",
-          "handle": 536870942,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ipv4_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870942,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_15",
-      "handle": 1879048210,
-      "name": "cond-11",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 112, "true": 64 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "", "true": "tbl_act_15" },
-          "logical_table_id": 0,
-          "stage_number": 4,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "spgw_ingress_hasReturned", "start_bit": 1, "bit_width": 1 } ],
-      "condition": "(!spgw_ingress_hasReturned)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777239,
-      "name": "FabricIngress.spgw_ingress.flexible_pdr_lookup",
+      "direction": "egress",
+      "handle": 16777245,
+      "name": "FabricEgress.process_int_main.process_int_source.tb_int_source",
       "table_type": "match",
       "size": 512,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 4,
+            "stage_number": 1,
             "size": 512,
             "stage_table_type": "ternary_match",
             "logical_table_id": 1,
             "has_attached_gateway": true,
-            "default_next_table": 80,
+            "default_next_table": 34,
             "pack_format": [
               {
-                "table_word_width": 188,
+                "table_word_width": 141,
                 "memory_word_width": 47,
                 "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 4,
+                "number_memory_units_per_table_word": 3,
                 "entries": [
                   {
                     "entry_number": 0,
@@ -131520,62 +99007,26 @@
                         "field_width": 2
                       },
                       {
-                        "field_name": "--tcam_payload_3--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_3--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "ipv4_dst",
+                        "field_name": "ipv4_src",
                         "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "ip_proto",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 8
                       },
                       {
                         "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
                         "source": "spec",
-                        "start_bit": 24,
+                        "start_bit": 8,
                         "field_width": 8
                       },
                       {
-                        "field_name": "tunnel_ipv4_dst",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "tunnel_ipv4_dst",
-                        "lsb_mem_word_offset": 1,
+                        "field_name": "ipv4_src",
+                        "lsb_mem_word_offset": 17,
                         "lsb_mem_word_idx": 2,
                         "msb_mem_word_idx": 2,
                         "source": "spec",
@@ -131583,62 +99034,17 @@
                         "field_width": 16
                       },
                       {
-                        "field_name": "teid",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "tunnel_ipv4_dst",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "teid",
+                        "field_name": "ipv4_dst",
                         "lsb_mem_word_offset": 33,
                         "lsb_mem_word_idx": 2,
                         "msb_mem_word_idx": 2,
                         "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "teid",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 24,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
                         "start_bit": 0,
                         "field_width": 8
                       },
                       {
-                        "field_name": "teid",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 25,
+                        "field_name": "ipv4_dst",
+                        "lsb_mem_word_offset": 1,
                         "lsb_mem_word_idx": 1,
                         "msb_mem_word_idx": 1,
                         "source": "spec",
@@ -131646,76 +99052,58 @@
                         "field_width": 16
                       },
                       {
-                        "field_name": "ipv4_src",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "l4_dport",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 16
-                      },
-                      {
                         "field_name": "l4_sport",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 16
                       },
                       {
-                        "field_name": "spgw_direction",
-                        "lsb_mem_word_offset": 41,
+                        "field_name": "l4_dport",
+                        "lsb_mem_word_offset": 33,
                         "lsb_mem_word_idx": 1,
                         "msb_mem_word_idx": 1,
                         "source": "spec",
                         "start_bit": 0,
-                        "field_width": 2
+                        "field_width": 8
                       },
                       {
-                        "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 41,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
+                        "field_name": "l4_dport",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
                         "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 4
+                        "start_bit": 8,
+                        "field_width": 8
                       },
                       {
-                        "field_name": "ipv4_dst",
+                        "field_name": "ipv4_src",
                         "lsb_mem_word_offset": 41,
                         "lsb_mem_word_idx": 2,
                         "msb_mem_word_idx": 2,
                         "source": "spec",
-                        "start_bit": 20,
+                        "start_bit": 8,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "ipv4_src",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 12,
                         "field_width": 4
                       },
                       {
                         "field_name": "--unused--",
-                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_offset": 9,
                         "lsb_mem_word_idx": 0,
                         "msb_mem_word_idx": 0,
                         "source": "zero",
                         "start_bit": 0,
-                        "field_width": 2
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 43,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "zero",
-                        "start_bit": 0,
-                        "field_width": 2
+                        "field_width": 34
                       }
                     ]
                   }
@@ -131724,12 +99112,12 @@
             ],
             "memory_resource_allocation": {
               "memory_type": "tcam",
-              "memory_units_and_vpns": [ { "memory_units": [ 0, 1, 2, 3 ], "vpns": [ 0 ] } ],
-              "spare_bank_memory_unit": 3
+              "memory_units_and_vpns": [ { "memory_units": [ 0, 1, 2 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 2
             },
             "result_physical_buses": [ 0 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 4,
+              "stage_number": 1,
               "stage_table_type": "ternary_indirection",
               "size": 32768,
               "pack_format": [
@@ -132549,18 +99937,35 @@
               },
               "action_format": [
                 {
-                  "action_name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-                  "action_handle": 536870937,
+                  "action_name": "nop",
+                  "action_handle": 536870982,
                   "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 80,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
+                  "next_table": 4294967295,
+                  "next_table_full": 34,
+                  "vliw_instruction": -1,
+                  "vliw_instruction_full": 64,
                   "next_tables": [
                     {
-                      "next_table_name": "FabricIngress.spgw_ingress.far_lookup",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 5
+                      "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+                      "next_table_logical_id": 2,
+                      "next_table_stage_no": 2
+                    }
+                  ],
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "FabricEgress.process_int_main.process_int_source.int_source_dscp",
+                  "action_handle": 536870981,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 34,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 65,
+                  "next_tables": [
+                    {
+                      "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+                      "next_table_logical_id": 2,
+                      "next_table_stage_no": 2
                     }
                   ],
                   "immediate_fields": []
@@ -132574,53 +99979,227 @@
       "action_data_table_refs": [
         {
           "how_referenced": "direct",
-          "handle": 33554436,
-          "name": "FabricIngress.spgw_ingress.flexible_pdr_lookup$action"
+          "handle": 33554443,
+          "name": "FabricEgress.process_int_main.process_int_source.tb_int_source$action"
         }
       ],
       "selection_table_refs": [],
       "meter_table_refs": [],
-      "statistics_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108877,
+          "name": "FabricEgress.process_int_main.process_int_source.counter_int_source"
+        }
+      ],
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-          "handle": 536870937,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ctr_id" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "ctr_id" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_id" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "far_id" }
-            }
-          ],
+          "name": "nop",
+          "handle": 536870982,
+          "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
           "is_compiler_added_action": false,
           "constant_default_action": false,
           "disallowed_as_default_action_reason": "",
-          "p4_parameters": [
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_source.int_source_dscp",
+          "handle": 536870981,
+          "primitives": [
             {
-              "name": "ctr_id",
-              "start_bit": 0,
-              "position": 0,
-              "default_value": "0x0",
-              "bit_width": 32
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricEgress.process_int_main.process_int_source.counter_int_source"
+              }
             },
             {
-              "name": "far_id",
-              "start_bit": 32,
-              "position": 1,
-              "default_value": "0x0",
-              "bit_width": 32
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.intl4_shim.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.intl4_shim.int_type" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.intl4_shim.len_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "4" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_header.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.ver" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.rep" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.c" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.e" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.rsvd1" },
+              "dst_mask": { "type": "immediate", "name": "31" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.ins_cnt" },
+              "dst_mask": { "type": "immediate", "name": "31" },
+              "src1": { "type": "action_param", "name": "ins_cnt" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.max_hop_cnt" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "action_param", "name": "max_hop" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.total_hop_cnt" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_0003" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "action_param", "name": "ins_mask0003" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_0407" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "action_param", "name": "ins_mask0407" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_0811" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_header.instruction_mask_1215" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.intl4_tail.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.intl4_tail.next_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.intl4_tail.dest_port" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.intl4_tail.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.ipv4.dscp" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "src2": { "type": "immediate", "name": "16" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.udp.len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.udp.len" },
+              "src2": { "type": "immediate", "name": "16" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "immediate", "name": "0x1" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            { "name": "max_hop", "start_bit": 0, "position": 0, "bit_width": 8 },
+            { "name": "ins_cnt", "start_bit": 8, "position": 1, "bit_width": 5 },
+            {
+              "name": "ins_mask0003",
+              "start_bit": 13,
+              "position": 2,
+              "bit_width": 4
+            },
+            {
+              "name": "ins_mask0407",
+              "start_bit": 17,
+              "position": 3,
+              "bit_width": 4
             }
           ],
           "override_meter_addr": false,
@@ -132635,7 +100214,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870937,
+      "default_action_handle": 536870982,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -132643,48 +100222,12 @@
       "uses_range": false,
       "match_key_fields": [
         {
-          "name": "spgw_direction",
-          "global_name": "fabric_metadata.spgw.direction",
-          "start_bit": 0,
-          "bit_width": 2,
-          "bit_width_full": 2,
-          "position": 0,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "fabric_metadata.spgw",
-          "field_name": "direction"
-        },
-        {
-          "name": "tunnel_ipv4_dst",
-          "global_name": "fabric_metadata.spgw.tunnel_dst_addr",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 1,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "fabric_metadata.spgw",
-          "field_name": "tunnel_dst_addr"
-        },
-        {
-          "name": "teid",
-          "global_name": "fabric_metadata.spgw.teid",
-          "start_bit": 0,
-          "bit_width": 32,
-          "bit_width_full": 32,
-          "position": 2,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "fabric_metadata.spgw",
-          "field_name": "teid"
-        },
-        {
           "name": "ipv4_src",
           "global_name": "hdr.ipv4.src_addr",
           "start_bit": 0,
           "bit_width": 32,
           "bit_width_full": 32,
-          "position": 3,
+          "position": 0,
           "match_type": "ternary",
           "is_valid": false,
           "instance_name": "hdr.ipv4",
@@ -132696,31 +100239,19 @@
           "start_bit": 0,
           "bit_width": 32,
           "bit_width_full": 32,
-          "position": 4,
+          "position": 1,
           "match_type": "ternary",
           "is_valid": false,
           "instance_name": "hdr.ipv4",
           "field_name": "dst_addr"
         },
         {
-          "name": "ip_proto",
-          "global_name": "hdr.ipv4.protocol",
-          "start_bit": 0,
-          "bit_width": 8,
-          "bit_width_full": 8,
-          "position": 5,
-          "match_type": "ternary",
-          "is_valid": false,
-          "instance_name": "hdr.ipv4",
-          "field_name": "protocol"
-        },
-        {
           "name": "l4_sport",
           "global_name": "fabric_metadata.l4_sport",
           "start_bit": 0,
           "bit_width": 16,
           "bit_width_full": 16,
-          "position": 6,
+          "position": 2,
           "match_type": "ternary",
           "is_valid": false,
           "instance_name": "fabric_metadata",
@@ -132732,7 +100263,7 @@
           "start_bit": 0,
           "bit_width": 16,
           "bit_width_full": 16,
-          "position": 7,
+          "position": 3,
           "match_type": "ternary",
           "is_valid": false,
           "instance_name": "fabric_metadata",
@@ -132743,45 +100274,80 @@
       "static_entries": []
     },
     {
-      "direction": "ingress",
-      "attached_to": "FabricIngress.spgw_ingress.flexible_pdr_lookup",
-      "handle": 1879048211,
-      "name": "cond-12",
+      "direction": "egress",
+      "attached_to": "FabricEgress.process_int_main.process_int_source.tb_int_source",
+      "handle": 1879048200,
+      "name": "cond-26",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 80, "true": 65 },
-          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 34, "true": 17 },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
-            "false": "FabricIngress.spgw_ingress.far_lookup",
-            "true": "FabricIngress.spgw_ingress.flexible_pdr_lookup"
+            "false": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+            "true": "FabricEgress.process_int_main.process_int_source.tb_int_source"
           },
           "logical_table_id": 1,
-          "stage_number": 4,
+          "stage_number": 1,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
       "condition_fields": [
         {
-          "name": "fabric_metadata.spgw.pdr_hit",
-          "start_bit": 3,
+          "name": "fabric_metadata.int_meta.source",
+          "start_bit": 6,
           "bit_width": 1
         }
       ],
-      "condition": "(fabric_metadata.spgw.pdr_hit == 0)",
+      "condition": "(fabric_metadata.int_meta.source == 1)",
       "size": 0
     },
     {
-      "direction": "ingress",
-      "handle": 33554436,
-      "name": "FabricIngress.spgw_ingress.flexible_pdr_lookup$action",
+      "direction": "egress",
+      "handle": 67108877,
+      "name": "FabricEgress.process_int_main.process_int_source.counter_int_source",
+      "table_type": "statistics",
+      "size": 1024,
+      "stage_tables": [
+        {
+          "stage_number": 1,
+          "size": 1024,
+          "stage_table_type": "statistics",
+          "logical_table_id": 1,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 78 ], "vpns": [ 0 ] } ],
+            "spare_bank_memory_unit": 79
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 64,
+      "packet_counter_resolution": 64,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "egress",
+      "handle": 33554443,
+      "name": "FabricEgress.process_int_main.process_int_source.tb_int_source$action",
       "table_type": "action",
       "size": 2048,
       "stage_tables": [
         {
-          "stage_number": 4,
+          "stage_number": 1,
           "size": 2048,
           "stage_table_type": "action_data",
           "logical_table_id": 1,
@@ -132796,34 +100362,153 @@
                   "entry_number": 1,
                   "fields": [
                     {
-                      "start_bit": 8,
-                      "field_width": 24,
+                      "start_bit": 0,
+                      "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 64,
-                      "field_name": "far_id"
+                      "field_name": "max_hop"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 8,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 92,
+                      "field_name": "ins_mask0003"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 88,
-                      "field_name": "far_id"
+                      "field_name": "ins_mask0407"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 32,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 110,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 108,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 107,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 106,
+                      "field_name": "$constant7"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 5 } ],
+                      "lsb_mem_word_offset": 101,
+                      "field_name": "$constant8"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 96,
-                      "field_name": "ctr_id"
+                      "field_name": "ins_cnt"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 112,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 112,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 72,
+                      "field_name": "--padding_8_15--"
                     }
                   ]
                 },
@@ -132831,2934 +100516,158 @@
                   "entry_number": 0,
                   "fields": [
                     {
-                      "start_bit": 8,
-                      "field_width": 24,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "far_id"
-                    },
-                    {
                       "start_bit": 0,
                       "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 24,
-                      "field_name": "far_id"
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "max_hop"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 32,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 4 } ],
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 28,
+                      "field_name": "ins_mask0003"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "ins_mask0407"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 46,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 44,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 43,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 42,
+                      "field_name": "$constant7"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 5 } ],
+                      "lsb_mem_word_offset": 37,
+                      "field_name": "$constant8"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
                       "lsb_mem_word_offset": 32,
-                      "field_name": "ctr_id"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870937
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricIngress.spgw_ingress.set_pdr_attributes",
-          "handle": 536870937,
-          "p4_parameters": [
-            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
-            {
-              "name": "far_id",
-              "start_bit": 32,
-              "position": 1,
-              "bit_width": 32
-            }
-          ]
-        }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "egress",
-      "handle": 16777261,
-      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-      "table_type": "match",
-      "size": 1024,
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554445,
-          "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407$action"
-        }
-      ],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "default_action_handle": 536871023,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "hdr.int_header.instruction_mask_0407",
-          "start_bit": 0,
-          "bit_width": 4,
-          "bit_width_full": 4,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "hdr.int_header",
-          "field_name": "instruction_mask_0407"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 4,
-            "size": 1024,
-            "stage_table_type": "hash_match",
-            "logical_table_id": 2,
-            "has_attached_gateway": false,
-            "default_next_table": 255,
-            "hash_functions": [
-              {
-                "hash_bits": [
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "hdr.int_header.instruction_mask_0407",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "hdr.int_header.instruction_mask_0407",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "hdr.int_header.instruction_mask_0407",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "hdr.int_header.instruction_mask_0407",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 0
-                  }
-                ],
-                "hash_function_number": 0,
-                "ghost_bit_to_hash_bit": [ [ 0 ], [ 1 ], [ 2 ], [ 3 ] ],
-                "ghost_bit_info": [
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0407",
-                    "bit_in_match_spec": 0
-                  },
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0407",
-                    "bit_in_match_spec": 1
-                  },
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0407",
-                    "bit_in_match_spec": 2
-                  },
-                  {
-                    "field_name": "hdr.int_header.instruction_mask_0407",
-                    "bit_in_match_spec": 3
-                  }
-                ]
-              }
-            ],
-            "action_format": [
-              {
-                "action_name": "NoAction",
-                "action_handle": 536871023,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 4294967295,
-                "next_table_full": 82,
-                "vliw_instruction": -1,
-                "vliw_instruction_full": 67,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
-                "action_handle": 536871007,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 0,
-                "vliw_instruction_full": 64,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
-                "action_handle": 536871008,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 1,
-                "vliw_instruction_full": 65,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
-                "action_handle": 536871009,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 2,
-                "vliw_instruction_full": 66,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
-                "action_handle": 536871010,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 4,
-                "vliw_instruction_full": 68,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
-                "action_handle": 536871011,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 6,
-                "vliw_instruction_full": 70,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
-                "action_handle": 536871012,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 8,
-                "vliw_instruction_full": 72,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
-                "action_handle": 536871013,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 10,
-                "vliw_instruction_full": 74,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
-                "action_handle": 536871014,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 12,
-                "vliw_instruction_full": 76,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
-                "action_handle": 536871015,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 14,
-                "vliw_instruction_full": 78,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
-                "action_handle": 536871016,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 16,
-                "vliw_instruction_full": 80,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
-                "action_handle": 536871017,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 18,
-                "vliw_instruction_full": 82,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_8",
-                    "param_type": "constant",
-                    "const_value": 8,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
-                "action_handle": 536871018,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 20,
-                "vliw_instruction_full": 84,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
-                "action_handle": 536871019,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 22,
-                "vliw_instruction_full": 86,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
-                "action_handle": 536871020,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 24,
-                "vliw_instruction_full": 88,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
-                "action_handle": 536871021,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 26,
-                "vliw_instruction_full": 90,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_12",
-                    "param_type": "constant",
-                    "const_value": 12,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              },
-              {
-                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
-                "action_handle": 536871022,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 82,
-                "vliw_instruction": 28,
-                "vliw_instruction_full": 92,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_29",
-                    "next_table_logical_id": 2,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": [
-                  {
-                    "param_name": "constant_16",
-                    "param_type": "constant",
-                    "const_value": 16,
-                    "param_shift": 0,
-                    "dest_start": 0,
-                    "dest_width": 16
-                  }
-                ]
-              }
-            ],
-            "result_physical_buses": [ 14 ],
-            "pack_format": [
-              {
-                "memory_word_width": 128,
-                "table_word_width": 128,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1
-              }
-            ],
-            "memory_resource_allocation": null,
-            "stash_allocation": {
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 16,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "immediate",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 6,
-                          "field_name": "immediate",
-                          "match_mode": "unused"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 6,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action",
-                          "match_mode": "unused"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "num_stash_entries": 2,
-              "stash_entries": [
-                [
-                  {
-                    "stash_entry_id": 28,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ],
-                [
-                  {
-                    "stash_entry_id": 29,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ]
-              ]
-            },
-            "ways": [
-              {
-                "stage_number": 4,
-                "way_number": 0,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 6,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "instr",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "action",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 16,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "immediate",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 6,
-                            "field_name": "immediate",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 90,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 22,
-                            "field_name": "--padding_22_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 0,
-                  "hash_entry_bit_hi": 9,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
-                }
-              }
-            ]
-          }
-        ],
-        "match_type": "exact",
-        "uses_dynamic_key_masks": false
-      },
-      "actions": [
-        {
-          "name": "NoAction",
-          "handle": 536871023,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
-          "handle": 536871007,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
-          "handle": 536871008,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
-          "handle": 536871009,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
-          "handle": 536871010,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
-          "handle": 536871011,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
-          "handle": 536871012,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
-          "handle": 536871013,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
-          "handle": 536871014,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
-          "handle": 536871015,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "4" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
-          "handle": 536871016,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
-          "handle": 536871017,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
-          "handle": 536871018,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
-          "handle": 536871019,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "2" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "8" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
-          "handle": 536871020,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
-          "handle": 536871021,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "3" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "12" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
-          "handle": 536871022,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
-            },
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
-              "src2": { "type": "immediate", "name": "4" }
-            },
-            {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
-              "src2": { "type": "immediate", "name": "16" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": [
-        {
-          "priority": 0,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x0"
-            }
-          ],
-          "action_handle": 536871007,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 1,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x1"
-            }
-          ],
-          "action_handle": 536871008,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 2,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x2"
-            }
-          ],
-          "action_handle": 536871009,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 3,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x3"
-            }
-          ],
-          "action_handle": 536871010,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 4,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x4"
-            }
-          ],
-          "action_handle": 536871011,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 5,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x5"
-            }
-          ],
-          "action_handle": 536871012,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 6,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x6"
-            }
-          ],
-          "action_handle": 536871013,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 7,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x7"
-            }
-          ],
-          "action_handle": 536871014,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 8,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x8"
-            }
-          ],
-          "action_handle": 536871015,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 9,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0x9"
-            }
-          ],
-          "action_handle": 536871016,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 10,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0xa"
-            }
-          ],
-          "action_handle": 536871017,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 11,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0xb"
-            }
-          ],
-          "action_handle": 536871018,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 12,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0xc"
-            }
-          ],
-          "action_handle": 536871019,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 13,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0xd"
-            }
-          ],
-          "action_handle": 536871020,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 14,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0xe"
-            }
-          ],
-          "action_handle": 536871021,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        },
-        {
-          "priority": 15,
-          "match_key_fields_values": [
-            {
-              "field_name": "hdr.int_header.instruction_mask_0407",
-              "value": "0xf"
-            }
-          ],
-          "action_handle": 536871022,
-          "is_default_entry": false,
-          "action_parameters_values": []
-        }
-      ]
-    },
-    {
-      "direction": "egress",
-      "handle": 33554445,
-      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407$action",
-      "table_type": "action",
-      "size": 2048,
-      "stage_tables": [
-        {
-          "stage_number": 4,
-          "size": 2048,
-          "stage_table_type": "action_data",
-          "logical_table_id": 2,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871007
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871008
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "$constant1"
+                      "field_name": "ins_cnt"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "--padding_14_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "--padding_18_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "--padding_46_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "--padding_50_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "--padding_14_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "--padding_18_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "--padding_46_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "--padding_50_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871017
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "--padding_14_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "--padding_46_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "--padding_14_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "--padding_46_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871018
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
                       "field_width": 16,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 64,
+                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 48,
                       "field_name": "$constant0"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
                       "field_width": 16,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "constant",
                       "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "$constant0"
+                      "const_tuples": [ { "dest_start": 0, "value": 16, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "$constant1"
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 48,
+                      "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_63--"
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "--padding_8_15--"
                     }
                   ]
                 }
               ],
-              "action_handle": 536871019
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "--padding_15_17--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "--padding_47_49--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "--padding_15_17--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "--padding_47_49--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871020
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "--padding_18_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "--padding_50_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "--padding_18_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "--padding_50_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871021
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "$constant6"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "$constant6"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871022
+              "action_handle": 536870981
             },
             {
               "memory_word_width": 128,
@@ -135797,1035 +100706,7 @@
                   ]
                 }
               ],
-              "action_handle": 536871009
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 16,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 48,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "--padding_16_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871010
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871011
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_13--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "--padding_15_17--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_19_45--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "--padding_47_49--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_13--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "--padding_15_17--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_19_45--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 3,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "--padding_47_49--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871012
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_13--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 28,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "--padding_18_45--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "--padding_50_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_13--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 28,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "--padding_18_45--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "--padding_50_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871013
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 81,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 113,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_13--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 79,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_19_45--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 111,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 17,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
-                      "lsb_mem_word_offset": 49,
-                      "field_name": "$constant5"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 14,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_13--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 15,
-                      "field_name": "--padding_15_16--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 27,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_19_45--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 47,
-                      "field_name": "--padding_47_48--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871014
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871015
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 77,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 109,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 78,
-                      "field_name": "--padding_14_17--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 83,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 110,
-                      "field_name": "--padding_46_49--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 115,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 13,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 45,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_12--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 14,
-                      "field_name": "--padding_14_17--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 26,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 19,
-                      "field_name": "--padding_19_44--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 46,
-                      "field_name": "--padding_46_49--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 13,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 51,
-                      "field_name": "--padding_51_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871016
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 64,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536871023
+              "action_handle": 536870982
             }
           ],
           "memory_resource_allocation": {
@@ -136836,295 +100717,48 @@
       ],
       "actions": [
         {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
-          "handle": 536871007,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
-          "handle": 536871008,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
-          "handle": 536871017,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
-          "handle": 536871018,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
-          "handle": 536871019,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
-          "handle": 536871020,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
-          "handle": 536871021,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
-          "handle": 536871022,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
-          "handle": 536871009,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
-          "handle": 536871010,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
-          "handle": 536871011,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
-          "handle": 536871012,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
-          "handle": 536871013,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
-          "handle": 536871014,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
-          "handle": 536871015,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
-          "handle": 536871016,
-          "p4_parameters": []
-        },
-        { "name": "NoAction", "handle": 536871023, "p4_parameters": [] }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "ingress",
-      "handle": 33554437,
-      "name": "FabricIngress.spgw_ingress.far_lookup$action",
-      "table_type": "action",
-      "size": 4096,
-      "stage_tables": [
-        {
-          "stage_number": 5,
-          "size": 4096,
-          "stage_table_type": "action_data",
-          "logical_table_id": 0,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "drop"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 127,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "--padding_1_127--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870939
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "drop"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "teid"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "tunnel_src_addr"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "tunnel_src_addr"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "tunnel_dst_addr"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "tunnel_dst_addr"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 31,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "--padding_1_31--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870940
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [
-              { "memory_units": [ 90 ], "vpns": [ 0 ] },
-              { "memory_units": [ 91 ], "vpns": [ 1 ] },
-              { "memory_units": [ 92 ], "vpns": [ 2 ] },
-              { "memory_units": [ 93 ], "vpns": [ 3 ] }
-            ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricIngress.spgw_ingress.load_normal_far_attributes",
-          "handle": 536870939,
+          "name": "FabricEgress.process_int_main.process_int_source.int_source_dscp",
+          "handle": 536870981,
           "p4_parameters": [
-            { "name": "drop", "start_bit": 0, "position": 0, "bit_width": 1 },
+            { "name": "max_hop", "start_bit": 0, "position": 0, "bit_width": 8 },
+            { "name": "ins_cnt", "start_bit": 8, "position": 1, "bit_width": 5 },
             {
-              "name": "notify_cp",
-              "start_bit": 1,
-              "position": 1,
-              "bit_width": 1
-            }
-          ]
-        },
-        {
-          "name": "FabricIngress.spgw_ingress.load_tunnel_far_attributes",
-          "handle": 536870940,
-          "p4_parameters": [
-            { "name": "drop", "start_bit": 0, "position": 0, "bit_width": 1 },
-            {
-              "name": "notify_cp",
-              "start_bit": 1,
-              "position": 1,
-              "bit_width": 1
-            },
-            {
-              "name": "tunnel_src_addr",
-              "start_bit": 2,
+              "name": "ins_mask0003",
+              "start_bit": 13,
               "position": 2,
-              "bit_width": 32
+              "bit_width": 4
             },
             {
-              "name": "tunnel_dst_addr",
-              "start_bit": 34,
+              "name": "ins_mask0407",
+              "start_bit": 17,
               "position": 3,
-              "bit_width": 32
-            },
-            { "name": "teid", "start_bit": 66, "position": 4, "bit_width": 32 }
+              "bit_width": 4
+            }
           ]
-        }
+        },
+        { "name": "nop", "handle": 536870982, "p4_parameters": [] }
       ],
       "static_entries": [],
       "how_referenced": "direct"
     },
     {
       "direction": "ingress",
-      "handle": 16777240,
-      "name": "FabricIngress.spgw_ingress.far_lookup",
+      "handle": 16777220,
+      "name": "FabricIngress.spgw.downlink_pdrs",
       "table_type": "match",
-      "size": 4096,
+      "size": 1024,
       "action_data_table_refs": [
         {
           "how_referenced": "direct",
-          "handle": 33554437,
-          "name": "FabricIngress.spgw_ingress.far_lookup$action"
+          "handle": 33554435,
+          "name": "FabricIngress.spgw.downlink_pdrs$action"
         }
       ],
       "selection_table_refs": [],
       "meter_table_refs": [],
       "statistics_table_refs": [],
       "stateful_table_refs": [],
-      "default_action_handle": 536870939,
+      "default_action_handle": 536870923,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -137132,27 +100766,27 @@
       "uses_range": false,
       "match_key_fields": [
         {
-          "name": "far_id",
-          "global_name": "fabric_metadata.spgw.far_id",
+          "name": "ue_addr",
+          "global_name": "hdr.ipv4.dst_addr",
           "start_bit": 0,
           "bit_width": 32,
           "bit_width_full": 32,
           "position": 0,
           "match_type": "exact",
           "is_valid": false,
-          "instance_name": "fabric_metadata.spgw",
-          "field_name": "far_id"
+          "instance_name": "hdr.ipv4",
+          "field_name": "dst_addr"
         }
       ],
       "ap_bind_indirect_res_to_match": [],
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 5,
+            "stage_number": 2,
             "size": 4096,
             "stage_table_type": "hash_match",
             "logical_table_id": 0,
-            "has_attached_gateway": false,
+            "has_attached_gateway": true,
             "default_next_table": 255,
             "hash_functions": [
               {
@@ -137160,82 +100794,76 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 8,
-                        "field_name": "far_id",
+                        "field_bit": 0,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 0
                       },
                       {
                         "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 2
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
                       },
                       {
                         "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 0,
@@ -137244,124 +100872,166 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "far_id",
+                        "field_bit": 1,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 1
                       },
                       {
                         "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 3
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 6
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 16,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 8
+                        "hash_match_group_bit": 16
                       },
                       {
                         "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 6,
-                        "field_name": "far_id",
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 2,
@@ -137370,94 +101040,70 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_bit": 3,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 7,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 3,
@@ -137466,154 +101112,160 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_bit": 4,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 2
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 26
                       },
                       {
-                        "field_bit": 0,
-                        "field_name": "far_id",
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 34
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 4,
-                    "seed": 1
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
+                        "field_bit": 5,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 1,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 35
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 5,
@@ -137622,238 +101274,256 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_bit": 6,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
                         "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "far_id",
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 37
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
-                    "hash_bit": 7,
+                    "hash_bit": 6,
                     "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_bit": 7,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 2
+                        "hash_match_group_bit": 7
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 4,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 38
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 8,
@@ -137862,70 +101532,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_bit": 9,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 2
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 3
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "far_id",
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 4
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
                       },
                       {
                         "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 9,
@@ -137934,88 +101598,64 @@
                   {
                     "bits_to_xor": [
                       {
+                        "field_bit": 9,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
                         "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
                       },
                       {
                         "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
+                        "hash_match_group_bit": 29
                       }
                     ],
                     "hash_bit": 10,
@@ -138024,76 +101664,58 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 8,
-                        "field_name": "far_id",
+                        "field_bit": 0,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 0
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 4
+                        "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 7
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
                       }
                     ],
                     "hash_bit": 11,
@@ -138102,70 +101724,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "far_id",
+                        "field_bit": 1,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 1
                       },
                       {
                         "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
                       },
                       {
                         "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 12,
@@ -138174,220 +101790,202 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 13,
-                        "field_name": "far_id",
+                        "field_bit": 2,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 5
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 6
+                        "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 7
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
                         "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 29
                       },
                       {
                         "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 13,
-                    "seed": 1
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_bit": 3,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 13,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 5
+                        "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
                         "field_bit": 16,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 8
+                        "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 0,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 34
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 14,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
                       }
                     ],
                     "hash_bit": 15,
@@ -138396,82 +101994,70 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
+                        "field_bit": 5,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 1,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 35
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 16,
@@ -138480,148 +102066,124 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_bit": 6,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 37
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 18,
@@ -138630,268 +102192,328 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
+                        "field_bit": 8,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 8
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
                         "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 3
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 4,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 20,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
+                        "hash_match_group_bit": 20
                       },
                       {
                         "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 5,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 39
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
-                    "hash_bit": 21,
+                    "hash_bit": 19,
                     "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
                         "field_bit": 8,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 13,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 5
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 6
+                        "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 7
+                        "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 20,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 21,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 22,
@@ -138900,76 +102522,52 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "far_id",
+                        "field_bit": 1,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 1
                       },
                       {
                         "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 24
                       }
                     ],
                     "hash_bit": 23,
@@ -138978,46 +102576,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_bit": 2,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 3
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
                         "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 6,
-                        "field_name": "far_id",
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 24,
@@ -139026,64 +102642,76 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
+                        "field_bit": 3,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 4
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 6
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 16,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 8
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
                       },
                       {
                         "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 30
                       },
                       {
-                        "field_bit": 7,
-                        "field_name": "far_id",
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 25,
@@ -139092,148 +102720,184 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 12,
-                        "field_name": "far_id",
+                        "field_bit": 4,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 34
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
                         "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 26,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 1,
-                        "field_name": "far_id",
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 35
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 27,
@@ -139242,94 +102906,94 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_bit": 6,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 6
                       },
                       {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
                         "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
                       },
                       {
                         "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 30
                       },
                       {
                         "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 36
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 28,
@@ -139338,94 +103002,70 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
+                        "field_bit": 7,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 7
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
                       },
                       {
                         "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
                       },
                       {
                         "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 30
                       },
                       {
                         "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 37
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 29,
@@ -139434,76 +103074,82 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
+                        "field_bit": 7,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 7
                       },
                       {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
                         "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 37
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 30,
@@ -139512,298 +103158,322 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 31,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
+                        "field_bit": 8,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 8
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
                         "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
                       }
                     ],
-                    "hash_bit": 33,
-                    "seed": 1
+                    "hash_bit": 31,
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
                         "field_bit": 9,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 1
+                        "hash_match_group_bit": 9
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 2
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 15,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 7
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
                     "hash_bit": 34,
@@ -139812,352 +103482,304 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      }
-                    ],
-                    "hash_bit": 35,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      }
-                    ],
-                    "hash_bit": 36,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 34
-                      }
-                    ],
-                    "hash_bit": 37,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "far_id",
+                        "field_bit": 2,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 12,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 4
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 13,
-                        "field_name": "far_id",
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 5
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 16
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 27,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 1,
-                        "field_name": "far_id",
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 35
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 35,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 36,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      }
+                    ],
+                    "hash_bit": 37,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
                     "hash_bit": 38,
@@ -140166,70 +103788,82 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 11,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "far_id",
+                        "field_bit": 6,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "far_id",
+                        "field_bit": 11,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "far_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "far_id",
+                        "field_bit": 15,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "far_id",
+                        "field_bit": 16,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "far_id",
+                        "field_bit": 19,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 31,
-                        "field_name": "far_id",
+                        "field_bit": 20,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 2,
-                        "field_name": "far_id",
+                        "field_bit": 25,
+                        "field_name": "ue_addr",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 36
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "ue_addr",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
                       }
                     ],
                     "hash_bit": 39,
@@ -140238,68 +103872,76 @@
                 ],
                 "hash_function_number": 0,
                 "ghost_bit_to_hash_bit": [
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ],
+                  [ 2, 13, 24, 35 ],
+                  [ 3, 14, 25, 36 ],
                   [ 4, 15, 26, 37 ],
                   [ 5, 16, 27, 38 ],
                   [ 6, 17, 28, 39 ],
                   [ 7, 18, 29, 30 ],
                   [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ],
-                  [ 2, 13, 24, 35 ],
-                  [ 3, 14, 25, 36 ],
-                  [ 0, 11, 22, 33 ],
-                  [ 1, 12, 23, 34 ]
+                  [ 9, 10, 21, 32 ]
                 ],
                 "ghost_bit_info": [
-                  { "field_name": "far_id", "bit_in_match_spec": 0 },
-                  { "field_name": "far_id", "bit_in_match_spec": 1 },
-                  { "field_name": "far_id", "bit_in_match_spec": 2 },
-                  { "field_name": "far_id", "bit_in_match_spec": 3 },
-                  { "field_name": "far_id", "bit_in_match_spec": 4 },
-                  { "field_name": "far_id", "bit_in_match_spec": 5 },
-                  { "field_name": "far_id", "bit_in_match_spec": 6 },
-                  { "field_name": "far_id", "bit_in_match_spec": 7 },
-                  { "field_name": "far_id", "bit_in_match_spec": 8 },
-                  { "field_name": "far_id", "bit_in_match_spec": 9 }
+                  { "field_name": "ue_addr", "bit_in_match_spec": 0 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 1 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 2 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 3 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 4 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 5 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 6 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 7 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 8 },
+                  { "field_name": "ue_addr", "bit_in_match_spec": 9 }
                 ]
               }
             ],
             "action_format": [
               {
-                "action_name": "FabricIngress.spgw_ingress.load_normal_far_attributes",
-                "action_handle": 536870939,
+                "action_name": "NoAction",
+                "action_handle": 536870923,
                 "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 81,
-                "vliw_instruction": 0,
-                "vliw_instruction_full": 65,
+                "next_table": 4294967295,
+                "next_table_full": 48,
+                "vliw_instruction": -1,
+                "vliw_instruction_full": 64,
                 "next_tables": [
                   {
-                    "next_table_name": "tbl_act_13",
-                    "next_table_logical_id": 1,
-                    "next_table_stage_no": 5
+                    "next_table_name": "FabricIngress.spgw.decap_gtpu.decap_gtpu",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 3
                   }
                 ],
                 "immediate_fields": []
               },
               {
-                "action_name": "FabricIngress.spgw_ingress.load_tunnel_far_attributes",
-                "action_handle": 536870940,
+                "action_name": "FabricIngress.spgw.load_pdr",
+                "action_handle": 536870922,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
-                "next_table_full": 81,
+                "next_table_full": 48,
                 "vliw_instruction": 1,
-                "vliw_instruction_full": 66,
+                "vliw_instruction_full": 65,
                 "next_tables": [
                   {
-                    "next_table_name": "tbl_act_13",
-                    "next_table_logical_id": 1,
-                    "next_table_stage_no": 5
+                    "next_table_name": "FabricIngress.spgw.decap_gtpu.decap_gtpu",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 3
                   }
                 ],
-                "immediate_fields": []
+                "immediate_fields": [
+                  {
+                    "param_name": "needs_gtpu_decap",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 1
+                  }
+                ]
               }
             ],
-            "result_physical_buses": [ 12 ],
+            "result_physical_buses": [ 15 ],
             "pack_format": [
               {
                 "memory_word_width": 128,
@@ -140321,7 +103963,18 @@
                       "entry_number": 0,
                       "fields": [
                         {
-                          "field_name": "far_id",
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "immediate",
+                          "match_mode": "unused"
+                        },
+                        {
+                          "field_name": "ue_addr",
                           "source": "spec",
                           "lsb_mem_word_offset": 50,
                           "start_bit": 10,
@@ -140333,7 +103986,7 @@
                           "field_width": 6
                         },
                         {
-                          "field_name": "far_id",
+                          "field_name": "ue_addr",
                           "source": "spec",
                           "lsb_mem_word_offset": 32,
                           "start_bit": 16,
@@ -140345,7 +103998,7 @@
                           "field_width": 8
                         },
                         {
-                          "field_name": "far_id",
+                          "field_name": "ue_addr",
                           "source": "spec",
                           "lsb_mem_word_offset": 40,
                           "start_bit": 24,
@@ -140376,17 +104029,17 @@
               "stash_entries": [
                 [
                   {
-                    "stash_entry_id": 24,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
+                    "stash_entry_id": 30,
+                    "stash_match_data_select": 1,
+                    "stash_hashbank_select": 1,
                     "hash_function_id": 0
                   }
                 ],
                 [
                   {
-                    "stash_entry_id": 25,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
+                    "stash_entry_id": 31,
+                    "stash_match_data_select": 1,
+                    "stash_hashbank_select": 1,
                     "hash_function_id": 0
                   }
                 ]
@@ -140394,7 +104047,7 @@
             },
             "ways": [
               {
-                "stage_number": 5,
+                "stage_number": 2,
                 "way_number": 0,
                 "stage_table_type": "hash_way",
                 "size": 1024,
@@ -140421,6 +104074,17 @@
                           },
                           {
                             "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
                             "field_width": 4,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
@@ -140431,7 +104095,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 50,
                             "start_bit": 10,
@@ -140443,7 +104107,7 @@
                             "field_width": 6
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 32,
                             "start_bit": 16,
@@ -140455,7 +104119,7 @@
                             "field_width": 8
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 40,
                             "start_bit": 24,
@@ -140468,13 +104132,13 @@
                           },
                           {
                             "start_bit": 0,
-                            "field_width": 31,
+                            "field_width": 30,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
                             "source": "zero",
                             "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "--padding_1_31--",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
                             "match_mode": "unused"
                           },
                           {
@@ -140523,11 +104187,11 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 74 ], "vpns": [ 0 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
                 }
               },
               {
-                "stage_number": 5,
+                "stage_number": 2,
                 "way_number": 1,
                 "stage_table_type": "hash_way",
                 "size": 1024,
@@ -140554,6 +104218,17 @@
                           },
                           {
                             "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
                             "field_width": 4,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
@@ -140564,7 +104239,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 50,
                             "start_bit": 10,
@@ -140576,7 +104251,7 @@
                             "field_width": 6
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 32,
                             "start_bit": 16,
@@ -140588,7 +104263,7 @@
                             "field_width": 8
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 40,
                             "start_bit": 24,
@@ -140601,13 +104276,13 @@
                           },
                           {
                             "start_bit": 0,
-                            "field_width": 31,
+                            "field_width": 30,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
                             "source": "zero",
                             "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "--padding_1_31--",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
                             "match_mode": "unused"
                           },
                           {
@@ -140656,11 +104331,11 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 75 ], "vpns": [ 1 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 91 ], "vpns": [ 1 ] } ]
                 }
               },
               {
-                "stage_number": 5,
+                "stage_number": 2,
                 "way_number": 2,
                 "stage_table_type": "hash_way",
                 "size": 1024,
@@ -140687,6 +104362,17 @@
                           },
                           {
                             "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
                             "field_width": 4,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
@@ -140697,7 +104383,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 50,
                             "start_bit": 10,
@@ -140709,7 +104395,7 @@
                             "field_width": 6
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 32,
                             "start_bit": 16,
@@ -140721,7 +104407,7 @@
                             "field_width": 8
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 40,
                             "start_bit": 24,
@@ -140734,13 +104420,13 @@
                           },
                           {
                             "start_bit": 0,
-                            "field_width": 31,
+                            "field_width": 30,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
                             "source": "zero",
                             "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "--padding_1_31--",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
                             "match_mode": "unused"
                           },
                           {
@@ -140789,11 +104475,11 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 76 ], "vpns": [ 2 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 92 ], "vpns": [ 2 ] } ]
                 }
               },
               {
-                "stage_number": 5,
+                "stage_number": 2,
                 "way_number": 3,
                 "stage_table_type": "hash_way",
                 "size": 1024,
@@ -140820,6 +104506,17 @@
                           },
                           {
                             "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
                             "field_width": 4,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
@@ -140830,7 +104527,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 50,
                             "start_bit": 10,
@@ -140842,7 +104539,7 @@
                             "field_width": 6
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 32,
                             "start_bit": 16,
@@ -140854,7 +104551,7 @@
                             "field_width": 8
                           },
                           {
-                            "field_name": "far_id",
+                            "field_name": "ue_addr",
                             "source": "spec",
                             "lsb_mem_word_offset": 40,
                             "start_bit": 24,
@@ -140867,13 +104564,13 @@
                           },
                           {
                             "start_bit": 0,
-                            "field_width": 31,
+                            "field_width": 30,
                             "lsb_mem_word_idx": 0,
                             "msb_mem_word_idx": 0,
                             "source": "zero",
                             "enable_pfe": false,
-                            "lsb_mem_word_offset": 1,
-                            "field_name": "--padding_1_31--",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
                             "match_mode": "unused"
                           },
                           {
@@ -140922,7 +104619,7 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 77 ], "vpns": [ 3 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 93 ], "vpns": [ 3 ] } ]
                 }
               }
             ]
@@ -140933,37 +104630,14 @@
       },
       "actions": [
         {
-          "name": "FabricIngress.spgw_ingress.load_normal_far_attributes",
-          "handle": 536870939,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_dropped" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "action_param", "name": "drop" }
-            }
-          ],
+          "name": "NoAction",
+          "handle": 536870923,
+          "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
           "is_compiler_added_action": false,
           "constant_default_action": false,
-          "p4_parameters": [
-            {
-              "name": "drop",
-              "start_bit": 0,
-              "position": 0,
-              "default_value": "0x1",
-              "bit_width": 1
-            },
-            {
-              "name": "notify_cp",
-              "start_bit": 1,
-              "position": 1,
-              "default_value": "0x0",
-              "bit_width": 1
-            }
-          ],
+          "p4_parameters": [],
           "override_meter_addr": false,
           "override_meter_addr_pfe": false,
           "override_meter_full_addr": 0,
@@ -140976,95 +104650,49 @@
           "is_action_meter_color_aware": false
         },
         {
-          "name": "FabricIngress.spgw_ingress.load_tunnel_far_attributes",
-          "handle": 536870940,
+          "name": "FabricIngress.spgw.load_pdr",
+          "handle": 536870922,
           "primitives": [
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_dropped" },
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ctr_id" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "ctr_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_id" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "far_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.needs_gtpu_decap" },
               "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "action_param", "name": "drop" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": {
-                "type": "phv",
-                "name": "fabric_metadata.spgw.outer_header_creation"
-              },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.teid" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "teid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_src_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "tunnel_src_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_dst_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "tunnel_dst_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "tunnel_src_addr" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
-              "dst_mask": { "type": "immediate", "name": "0" },
-              "src1": { "type": "action_param", "name": "tunnel_dst_addr" }
+              "src1": { "type": "action_param", "name": "needs_gtpu_decap" }
             }
           ],
           "indirect_resources": [],
-          "allowed_as_default_action": false,
-          "disallowed_as_default_action_reason": "has_const_default",
+          "allowed_as_default_action": true,
           "is_compiler_added_action": false,
           "constant_default_action": false,
           "p4_parameters": [
+            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
             {
-              "name": "drop",
-              "start_bit": 0,
-              "position": 0,
-              "default_value": "0x1",
-              "bit_width": 1
-            },
-            {
-              "name": "notify_cp",
-              "start_bit": 1,
+              "name": "far_id",
+              "start_bit": 32,
               "position": 1,
-              "default_value": "0x0",
-              "bit_width": 1
+              "bit_width": 32
             },
             {
-              "name": "tunnel_src_addr",
-              "start_bit": 2,
+              "name": "needs_gtpu_decap",
+              "start_bit": 64,
               "position": 2,
-              "bit_width": 32
-            },
-            {
-              "name": "tunnel_dst_addr",
-              "start_bit": 34,
-              "position": 3,
-              "bit_width": 32
-            },
-            { "name": "teid", "start_bit": 66, "position": 4, "bit_width": 32 }
+              "bit_width": 1
+            }
           ],
           "override_meter_addr": false,
           "override_meter_addr_pfe": false,
@@ -141082,14 +104710,10627 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777241,
-      "name": "tbl_act_13",
+      "attached_to": "FabricIngress.spgw.downlink_pdrs",
+      "handle": 1879048201,
+      "name": "cond-3",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 32, "true": 33 },
+          "memory_resource_allocation": { "memory_unit": 12, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "FabricIngress.spgw.downlink_pdrs",
+            "true": "FabricIngress.spgw.uplink_pdrs"
+          },
+          "logical_table_id": 0,
+          "stage_number": 2,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [ { "name": "hdr.gtpu.$valid", "start_bit": 4, "bit_width": 1 } ],
+      "condition": "(hdr.gtpu.$valid == 1)",
+      "size": 0
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554435,
+      "name": "FabricIngress.spgw.downlink_pdrs$action",
+      "table_type": "action",
+      "size": 4096,
+      "stage_tables": [
+        {
+          "stage_number": 2,
+          "size": 4096,
+          "stage_table_type": "action_data",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "ctr_id"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "far_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "far_id"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "ctr_id"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "far_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "far_id"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870922
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870923
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] }
+            ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.load_pdr",
+          "handle": 536870922,
+          "p4_parameters": [
+            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
+            {
+              "name": "far_id",
+              "start_bit": 32,
+              "position": 1,
+              "bit_width": 32
+            },
+            {
+              "name": "needs_gtpu_decap",
+              "start_bit": 64,
+              "position": 2,
+              "bit_width": 1
+            }
+          ]
+        },
+        { "name": "NoAction", "handle": 536870923, "p4_parameters": [] }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777221,
+      "name": "FabricIngress.spgw.uplink_pdrs",
+      "table_type": "match",
+      "size": 1024,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554436,
+          "name": "FabricIngress.spgw.uplink_pdrs$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870921,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "tunnel_ipv4_dst",
+          "global_name": "hdr.ipv4.dst_addr",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "hdr.ipv4",
+          "field_name": "dst_addr"
+        },
+        {
+          "name": "teid",
+          "global_name": "hdr.gtpu.teid",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "position": 1,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "hdr.gtpu",
+          "field_name": "teid"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 2,
+            "size": 4096,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 1,
+            "has_attached_gateway": false,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 5,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 6,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 8,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 10,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 11,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      }
+                    ],
+                    "hash_bit": 12,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 13,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      }
+                    ],
+                    "hash_bit": 14,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 16,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      }
+                    ],
+                    "hash_bit": 18,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 20,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 21,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 22,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 23,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      }
+                    ],
+                    "hash_bit": 25,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 26,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 29,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 30,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 31,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 38
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 45
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      }
+                    ],
+                    "hash_bit": 34,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 35,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 42
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 59
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 36,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 37
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 43
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      }
+                    ],
+                    "hash_bit": 37,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 32
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 35
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 40
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 44
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 46
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 47
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 56
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 62
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "tunnel_ipv4_dst",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 33
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 34
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 36
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 39
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 41
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 57
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 58
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 60
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 61
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "teid",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 63
+                      }
+                    ],
+                    "hash_bit": 39,
+                    "seed": 0
+                  }
+                ],
+                "hash_function_number": 1,
+                "ghost_bit_to_hash_bit": [
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ],
+                  [ 2, 13, 24, 35 ],
+                  [ 3, 14, 25, 36 ],
+                  [ 4, 15, 26, 37 ],
+                  [ 5, 16, 27, 38 ],
+                  [ 6, 17, 28, 39 ],
+                  [ 7, 18, 29, 30 ],
+                  [ 8, 19, 20, 31 ],
+                  [ 9, 10, 21, 32 ]
+                ],
+                "ghost_bit_info": [
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 0 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 1 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 2 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 3 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 4 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 5 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 6 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 7 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 8 },
+                  { "field_name": "tunnel_ipv4_dst", "bit_in_match_spec": 9 }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536870921,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 4294967295,
+                "next_table_full": 48,
+                "vliw_instruction": -1,
+                "vliw_instruction_full": 64,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricIngress.spgw.decap_gtpu.decap_gtpu",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.load_pdr",
+                "action_handle": 536870920,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 48,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricIngress.spgw.decap_gtpu.decap_gtpu",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "needs_gtpu_decap",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 1
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "immediate",
+                          "match_mode": "unused"
+                        },
+                        {
+                          "field_name": "tunnel_ipv4_dst",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 82,
+                          "start_bit": 10,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 6
+                        },
+                        {
+                          "field_name": "tunnel_ipv4_dst",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 32,
+                          "start_bit": 16,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "field_name": "tunnel_ipv4_dst",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 40,
+                          "start_bit": 24,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "field_name": "teid",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 48,
+                          "start_bit": 0,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "field_name": "teid",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 56,
+                          "start_bit": 8,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "field_name": "teid",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 64,
+                          "start_bit": 16,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "field_name": "teid",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 72,
+                          "start_bit": 24,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 28,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 29,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 2,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 82,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 64,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 72,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 80,
+                            "field_name": "--padding_80_81--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 24,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 88,
+                            "field_name": "--padding_88_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 2,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 82,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 64,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 72,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 80,
+                            "field_name": "--padding_80_81--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 24,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 88,
+                            "field_name": "--padding_88_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 2,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 82,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 64,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 72,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 80,
+                            "field_name": "--padding_80_81--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 24,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 88,
+                            "field_name": "--padding_88_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              },
+              {
+                "stage_number": 2,
+                "way_number": 3,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 82,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "tunnel_ipv4_dst",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 64,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "teid",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 72,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 80,
+                            "field_name": "--padding_80_81--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 24,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 88,
+                            "field_name": "--padding_88_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 30,
+                  "hash_entry_bit_hi": 39,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 89 ], "vpns": [ 3 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870921,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.load_pdr",
+          "handle": 536870920,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ctr_id" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "ctr_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.far_id" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "far_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.needs_gtpu_decap" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "needs_gtpu_decap" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
+            {
+              "name": "far_id",
+              "start_bit": 32,
+              "position": 1,
+              "bit_width": 32
+            },
+            {
+              "name": "needs_gtpu_decap",
+              "start_bit": 64,
+              "position": 2,
+              "bit_width": 1
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554436,
+      "name": "FabricIngress.spgw.uplink_pdrs$action",
+      "table_type": "action",
+      "size": 4096,
+      "stage_tables": [
+        {
+          "stage_number": 2,
+          "size": 4096,
+          "stage_table_type": "action_data",
+          "logical_table_id": 1,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "ctr_id"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "far_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "far_id"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "ctr_id"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "far_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "far_id"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870920
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870921
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 94 ], "vpns": [ 0 ] },
+              { "memory_units": [ 95 ], "vpns": [ 1 ] }
+            ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.load_pdr",
+          "handle": 536870920,
+          "p4_parameters": [
+            { "name": "ctr_id", "start_bit": 0, "position": 0, "bit_width": 32 },
+            {
+              "name": "far_id",
+              "start_bit": 32,
+              "position": 1,
+              "bit_width": 32
+            },
+            {
+              "name": "needs_gtpu_decap",
+              "start_bit": 64,
+              "position": 2,
+              "bit_width": 1
+            }
+          ]
+        },
+        { "name": "NoAction", "handle": 536870921, "p4_parameters": [] }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "egress",
+      "handle": 16777246,
+      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+      "table_type": "match",
+      "size": 1,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870984,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "int_is_valid",
+          "global_name": "hdr.int_header.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.int_header",
+          "field_name": "$valid"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 2,
+            "size": 1024,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": true,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "int_is_valid",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  }
+                ],
+                "hash_function_number": 2,
+                "ghost_bit_to_hash_bit": [ [ 0 ] ],
+                "ghost_bit_info": [ { "field_name": "int_is_valid", "bit_in_match_spec": 0 } ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "nop",
+                "action_handle": 536870984,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 4294967295,
+                "next_table_full": 50,
+                "vliw_instruction": -1,
+                "vliw_instruction_full": 64,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_16",
+                    "next_table_logical_id": 2,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.init_metadata",
+                "action_handle": 536870983,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 50,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 65,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_16",
+                    "next_table_logical_id": 2,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "switch_id",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 32
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 12 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "immediate",
+                          "match_mode": "unused"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action",
+                          "match_mode": "unused"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 24,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 25,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 2,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 79,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 33,
+                            "field_name": "--padding_33_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 74 ], "vpns": [ 0 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "nop",
+          "handle": 536870984,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.init_metadata",
+          "handle": 536870983,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.transit" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_switch_id.switch_id" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "switch_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_port_ids.ingress_port_id" },
+              "dst_mask": { "type": "immediate", "name": "127" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_port_ids.ingress_port_id" },
+              "dst_mask": { "type": "immediate", "name": "511" },
+              "src1": { "type": "phv", "name": "ig_intr_md.ingress_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_port_ids.egress_port_id" },
+              "dst_mask": { "type": "immediate", "name": "127" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_port_ids.egress_port_id" },
+              "dst_mask": { "type": "immediate", "name": "511" },
+              "src1": { "type": "phv", "name": "eg_intr_md.egress_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_ingress_tstamp.ingress_tstamp" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.ig_tstamp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_egress_tstamp.egress_tstamp" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.eg_tstamp" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "sub",
+              "dst": { "type": "phv", "name": "hdr.int_hop_latency.hop_latency" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "eg_intr_md_from_prsr.global_tstamp" },
+              "src2": { "type": "phv", "name": "ig_intr_md_from_prsr.global_tstamp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_q_occupancy.q_occupancy" },
+              "dst_mask": { "type": "immediate", "name": "31" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.int_q_occupancy.q_occupancy" },
+              "dst_mask": { "type": "immediate", "name": "524287" },
+              "src1": { "type": "phv", "name": "eg_intr_md.deq_qdepth" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "switch_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 32
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+      "handle": 1879048202,
+      "name": "cond-27",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 100, "true": 34 },
+          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "tbl_egress_next_set_mpls",
+            "true": "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
+          },
+          "logical_table_id": 2,
+          "stage_number": 2,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [ { "name": "hdr.int_header.$valid", "start_bit": 3, "bit_width": 1 } ],
+      "condition": "(hdr.int_header.$valid == 1)",
+      "size": 0
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777222,
+      "name": "FabricIngress.spgw.decap_gtpu.decap_gtpu",
+      "table_type": "match",
+      "size": 4,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554437,
+          "name": "FabricIngress.spgw.decap_gtpu.decap_gtpu$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870928,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "hdr.inner_tcp.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.inner_tcp",
+          "field_name": "$valid"
+        },
+        {
+          "name": "hdr.inner_udp.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 1,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.inner_udp",
+          "field_name": "$valid"
+        },
+        {
+          "name": "hdr.inner_icmp.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 2,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.inner_icmp",
+          "field_name": "$valid"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 3,
+            "size": 1024,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "hdr.inner_udp.$valid",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "hdr.inner_tcp.$valid",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "hdr.inner_icmp.$valid",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 0
+                  }
+                ],
+                "hash_function_number": 0,
+                "ghost_bit_to_hash_bit": [ [ 2 ], [ 1 ], [ 0 ] ],
+                "ghost_bit_info": [
+                  {
+                    "field_name": "hdr.inner_icmp.$valid",
+                    "bit_in_match_spec": 0
+                  },
+                  {
+                    "field_name": "hdr.inner_tcp.$valid",
+                    "bit_in_match_spec": 0
+                  },
+                  {
+                    "field_name": "hdr.inner_udp.$valid",
+                    "bit_in_match_spec": 0
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "FabricIngress.spgw.decap_gtpu.decap_inner_tcp",
+                "action_handle": 536870925,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 49,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 65,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_1",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.decap_gtpu.decap_inner_udp",
+                "action_handle": 536870926,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 49,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_1",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.decap_gtpu.decap_inner_icmp",
+                "action_handle": 536870927,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 49,
+                "vliw_instruction": 3,
+                "vliw_instruction_full": 68,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_1",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.decap_gtpu.decap_inner_unknown",
+                "action_handle": 536870928,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 49,
+                "vliw_instruction": 4,
+                "vliw_instruction_full": 70,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_1",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 3
+                  }
+                ],
+                "immediate_fields": []
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action",
+                          "match_mode": "unused"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 28,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 29,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 3,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 3,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 109,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 3,
+                            "field_name": "--padding_3_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_tcp",
+          "handle": 536870925,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x800" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.tcp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.seq_no" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.seq_no" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.ack_no" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.ack_no" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.data_offset" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.data_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.res" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.res" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.ecn" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.ctrl" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.ctrl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.window" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.window" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.tcp.urgent_ptr" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_tcp.urgent_ptr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_tcp.$valid" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_udp",
+          "handle": 536870926,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x800" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.udp.checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_udp.checksum" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_udp.$valid" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_icmp",
+          "handle": 536870927,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x800" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.icmp.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.icmp_type" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.icmp_type" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.icmp_code" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.icmp_code" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.identifier" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.identifier" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.sequence_number" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.sequence_number" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.icmp.timestamp" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_icmp.timestamp" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_icmp.$valid" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_unknown",
+          "handle": 536870928,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x800" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ip_proto" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_sport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.inner_l4_dport" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.$valid" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.version" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.version" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ihl" },
+              "dst_mask": { "type": "immediate", "name": "15" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ihl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dscp" },
+              "dst_mask": { "type": "immediate", "name": "63" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dscp" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ecn" },
+              "dst_mask": { "type": "immediate", "name": "3" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ecn" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.total_len" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.identification" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.identification" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.flags" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.flags" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.frag_offset" },
+              "dst_mask": { "type": "immediate", "name": "8191" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.frag_offset" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.protocol" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.protocol" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.hdr_checksum" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.hdr_checksum" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.ipv4.dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "hdr.inner_ipv4.dst_addr" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.inner_ipv4.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.gtpu.$valid" }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.udp.$valid" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": [
+        {
+          "priority": 0,
+          "match_key_fields_values": [
+            { "field_name": "hdr.inner_tcp.$valid", "value": "0x1" },
+            { "field_name": "hdr.inner_udp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_icmp.$valid", "value": "0x0" }
+          ],
+          "action_handle": 536870925,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 1,
+          "match_key_fields_values": [
+            { "field_name": "hdr.inner_tcp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_udp.$valid", "value": "0x1" },
+            { "field_name": "hdr.inner_icmp.$valid", "value": "0x0" }
+          ],
+          "action_handle": 536870926,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 2,
+          "match_key_fields_values": [
+            { "field_name": "hdr.inner_tcp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_udp.$valid", "value": "0x0" },
+            { "field_name": "hdr.inner_icmp.$valid", "value": "0x1" }
+          ],
+          "action_handle": 536870927,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "attached_to": "FabricIngress.spgw.decap_gtpu.decap_gtpu",
+      "handle": 1879048203,
+      "name": "cond-5",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 49, "true": 48 },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "tbl_act_1",
+            "true": "FabricIngress.spgw.decap_gtpu.decap_gtpu"
+          },
+          "logical_table_id": 0,
+          "stage_number": 3,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.spgw.needs_gtpu_decap",
+          "start_bit": 2,
+          "bit_width": 1
+        }
+      ],
+      "condition": "(fabric_metadata.spgw.needs_gtpu_decap == 1)",
+      "size": 0
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554437,
+      "name": "FabricIngress.spgw.decap_gtpu.decap_gtpu$action",
+      "table_type": "action",
+      "size": 2048,
+      "stage_tables": [
+        {
+          "stage_number": 3,
+          "size": 2048,
+          "stage_table_type": "action_data",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 76,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 75,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 78,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 107,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 110,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 112,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 11,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_10--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 77,
+                      "field_name": "--padding_13_13--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 79,
+                      "field_name": "--padding_15_15--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 81,
+                      "field_name": "--padding_17_42--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 109,
+                      "field_name": "--padding_45_45--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 111,
+                      "field_name": "--padding_47_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 15,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 113,
+                      "field_name": "--padding_49_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 12,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 11,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 14,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 43,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 46,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 11,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_10--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 13,
+                      "field_name": "--padding_13_13--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 15,
+                      "field_name": "--padding_15_15--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 17,
+                      "field_name": "--padding_17_42--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 45,
+                      "field_name": "--padding_45_45--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 47,
+                      "field_name": "--padding_47_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 15,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 49,
+                      "field_name": "--padding_49_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870927
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 76,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 75,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 71,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 79,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 103,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 107,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 111,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_6--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 72,
+                      "field_name": "--padding_8_10--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 77,
+                      "field_name": "--padding_13_14--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 23,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "--padding_16_38--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 104,
+                      "field_name": "--padding_40_42--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 109,
+                      "field_name": "--padding_45_46--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 112,
+                      "field_name": "--padding_48_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 12,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 11,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 7,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 15,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 39,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 43,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 47,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_6--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "--padding_8_10--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 13,
+                      "field_name": "--padding_13_14--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 23,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "--padding_16_38--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 40,
+                      "field_name": "--padding_40_42--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 45,
+                      "field_name": "--padding_45_46--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "--padding_48_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870925
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870926
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870928
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_icmp",
+          "handle": 536870927,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_tcp",
+          "handle": 536870925,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_udp",
+          "handle": 536870926,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricIngress.spgw.decap_gtpu.decap_inner_unknown",
+          "handle": 536870928,
+          "p4_parameters": []
+        }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777223,
+      "name": "tbl_act_1",
       "table_type": "match",
       "size": 8388608,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 5,
+            "stage_number": 3,
             "size": 1,
             "stage_table_type": "match_with_no_key",
             "logical_table_id": 1,
@@ -141104,17 +115345,23 @@
                 "number_memory_units_per_table_word": 0
               }
             ],
-            "result_physical_buses": [ 1 ],
+            "result_physical_buses": [ 0 ],
             "action_format": [
               {
-                "action_name": "act_13",
-                "action_handle": 536870938,
+                "action_name": "act_1",
+                "action_handle": 536870924,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
-                "next_table_full": 255,
-                "vliw_instruction": 0,
+                "next_table_full": 64,
+                "vliw_instruction": 1,
                 "vliw_instruction_full": 64,
-                "next_tables": [],
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricIngress.spgw.fars",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 4
+                  }
+                ],
                 "immediate_fields": []
               }
             ]
@@ -141124,18 +115371,15 @@
       },
       "actions": [
         {
-          "name": "act_13",
-          "handle": 536870938,
+          "name": "act_1",
+          "handle": 536870924,
           "primitives": [
             {
               "name": "CountFromHashPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricIngress.spgw_ingress.pdr_counter"
-              },
+              "dst": { "type": "counter", "name": "FabricIngress.spgw.pdr_counter" },
               "idx": {
                 "type": "hash",
-                "name": "hash_FabricIngress.spgw_ingress.pdr_counter",
+                "name": "hash_FabricIngress.spgw.pdr_counter",
                 "algorithm": "identity"
               },
               "hash_inputs": [
@@ -141161,7 +115405,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870938,
+      "default_action_handle": 536870924,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -141175,44 +115419,53 @@
       "statistics_table_refs": [
         {
           "how_referenced": "indirect",
-          "handle": 67108867,
-          "name": "FabricIngress.spgw_ingress.pdr_counter"
+          "handle": 67108865,
+          "name": "FabricIngress.spgw.pdr_counter"
         }
       ],
       "stateful_table_refs": []
     },
     {
       "direction": "ingress",
-      "attached_to": "tbl_act_13",
-      "handle": 1879048212,
-      "name": "tbl_act_13-gateway",
+      "attached_to": "tbl_act_1",
+      "handle": 1879048204,
+      "name": "cond-4",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 96, "true": 96 },
-          "memory_resource_allocation": { "memory_unit": 6, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 64, "true": 64 },
+          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "tbl_act_14", "true": "tbl_act_14" },
+          "next_table_names": {
+            "false": "FabricIngress.spgw.fars",
+            "true": "FabricIngress.spgw.fars"
+          },
           "logical_table_id": 1,
-          "stage_number": 5,
+          "stage_number": 3,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [],
-      "condition": "true(always hit)",
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.spgw.src_iface",
+          "start_bit": 0,
+          "bit_width": 8
+        }
+      ],
+      "condition": "(fabric_metadata.spgw.src_iface != 3)",
       "size": 0
     },
     {
       "direction": "ingress",
-      "handle": 67108867,
-      "name": "FabricIngress.spgw_ingress.pdr_counter",
+      "handle": 67108865,
+      "name": "FabricIngress.spgw.pdr_counter",
       "table_type": "statistics",
-      "size": 1024,
+      "size": 2048,
       "stage_tables": [
         {
-          "stage_number": 5,
-          "size": 1024,
+          "stage_number": 3,
+          "size": 2048,
           "stage_table_type": "statistics",
           "logical_table_id": 1,
           "pack_format": [
@@ -141225,10 +115478,13 @@
           ],
           "memory_resource_allocation": {
             "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 30 ], "vpns": [ 0 ] } ],
-            "spare_bank_memory_unit": 31
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 80
           },
-          "stats_alu_index": 1
+          "stats_alu_index": 3
         }
       ],
       "how_referenced": "indirect",
@@ -141240,19 +115496,19 @@
     },
     {
       "direction": "egress",
-      "handle": 16777262,
-      "name": "tbl_act_29",
+      "handle": 16777247,
+      "name": "tbl_act_16",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 5,
+            "stage_number": 3,
             "size": 0,
             "stage_table_type": "ternary_match",
             "logical_table_id": 2,
             "has_attached_gateway": true,
-            "default_next_table": 83,
+            "default_next_table": 65,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -141287,9 +115543,9 @@
               }
             ],
             "memory_resource_allocation": null,
-            "result_physical_buses": [ 5 ],
+            "result_physical_buses": [ 1 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 5,
+              "stage_number": 3,
               "stage_table_type": "ternary_indirection",
               "size": 0,
               "pack_format": [
@@ -142105,18 +116361,18 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_28",
-                  "action_handle": 536871025,
+                  "action_name": "act_16",
+                  "action_handle": 536870985,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 83,
+                  "next_table_full": 65,
                   "vliw_instruction": 1,
                   "vliw_instruction_full": 65,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_30",
-                      "next_table_logical_id": 3,
-                      "next_table_stage_no": 5
+                      "next_table_name": "tbl_act_17",
+                      "next_table_logical_id": 1,
+                      "next_table_stage_no": 4
                     }
                   ],
                   "immediate_fields": []
@@ -142134,16 +116390,18 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_28",
-          "handle": 536871025,
+          "name": "act_16",
+          "handle": 536870985,
           "primitives": [
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" },
-              "src2": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": {
+                "type": "phv",
+                "name": "process_int_main_process_int_transit_hasReturned"
+              },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
             }
           ],
           "indirect_resources": [],
@@ -142164,7 +116422,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536871025,
+      "default_action_handle": 536870985,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -142176,30 +116434,9660 @@
     },
     {
       "direction": "egress",
-      "attached_to": "tbl_act_29",
-      "handle": 1879048213,
-      "name": "cond-35",
+      "attached_to": "tbl_act_16",
+      "handle": 1879048205,
+      "name": "cond-28",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 83, "true": 82 },
-          "memory_resource_allocation": { "memory_unit": 3, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 65, "true": 50 },
+          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "tbl_act_30", "true": "tbl_act_29" },
+          "next_table_names": { "false": "tbl_act_17", "true": "tbl_act_16" },
           "logical_table_id": 2,
-          "stage_number": 5,
+          "stage_number": 3,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.ipv4.$valid", "start_bit": 5, "bit_width": 1 } ],
-      "condition": "(hdr.ipv4.$valid == 1)",
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.int_meta.transit",
+          "start_bit": 3,
+          "bit_width": 1
+        }
+      ],
+      "condition": "(fabric_metadata.int_meta.transit == 0)",
+      "size": 0
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777224,
+      "name": "FabricIngress.spgw.fars",
+      "table_type": "match",
+      "size": 2048,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554438,
+          "name": "FabricIngress.spgw.fars$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870929,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "far_id",
+          "global_name": "fabric_metadata.spgw.far_id",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "fabric_metadata.spgw",
+          "field_name": "far_id"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 4096,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": false,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 5,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      }
+                    ],
+                    "hash_bit": 6,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 8,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 10,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      }
+                    ],
+                    "hash_bit": 11,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      }
+                    ],
+                    "hash_bit": 12,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      }
+                    ],
+                    "hash_bit": 13,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      }
+                    ],
+                    "hash_bit": 14,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 16,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      }
+                    ],
+                    "hash_bit": 18,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 20,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 21,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      }
+                    ],
+                    "hash_bit": 22,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      }
+                    ],
+                    "hash_bit": 23,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      }
+                    ],
+                    "hash_bit": 25,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      }
+                    ],
+                    "hash_bit": 26,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      }
+                    ],
+                    "hash_bit": 29,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      }
+                    ],
+                    "hash_bit": 30,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 31,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      }
+                    ],
+                    "hash_bit": 34,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      }
+                    ],
+                    "hash_bit": 35,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      }
+                    ],
+                    "hash_bit": 36,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      }
+                    ],
+                    "hash_bit": 37,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "far_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      }
+                    ],
+                    "hash_bit": 39,
+                    "seed": 1
+                  }
+                ],
+                "hash_function_number": 0,
+                "ghost_bit_to_hash_bit": [
+                  [ 2, 13, 24, 35 ],
+                  [ 3, 14, 25, 36 ],
+                  [ 4, 15, 26, 37 ],
+                  [ 5, 16, 27, 38 ],
+                  [ 6, 17, 28, 39 ],
+                  [ 7, 18, 29, 30 ],
+                  [ 8, 19, 20, 31 ],
+                  [ 9, 10, 21, 32 ],
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ]
+                ],
+                "ghost_bit_info": [
+                  { "field_name": "far_id", "bit_in_match_spec": 0 },
+                  { "field_name": "far_id", "bit_in_match_spec": 1 },
+                  { "field_name": "far_id", "bit_in_match_spec": 2 },
+                  { "field_name": "far_id", "bit_in_match_spec": 3 },
+                  { "field_name": "far_id", "bit_in_match_spec": 4 },
+                  { "field_name": "far_id", "bit_in_match_spec": 5 },
+                  { "field_name": "far_id", "bit_in_match_spec": 6 },
+                  { "field_name": "far_id", "bit_in_match_spec": 7 },
+                  { "field_name": "far_id", "bit_in_match_spec": 8 },
+                  { "field_name": "far_id", "bit_in_match_spec": 9 }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "FabricIngress.spgw.load_normal_far",
+                "action_handle": 536870929,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 80,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_2",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.load_tunnel_far",
+                "action_handle": 536870930,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 80,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_2",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricIngress.spgw.load_dbuf_far",
+                "action_handle": 536870931,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 80,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 68,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_2",
+                    "next_table_logical_id": 0,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "field_name": "far_id",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 50,
+                          "start_bit": 10,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 6
+                        },
+                        {
+                          "field_name": "far_id",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 32,
+                          "start_bit": 16,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "field_name": "far_id",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 40,
+                          "start_bit": 24,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action",
+                          "match_mode": "unused"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 28,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 29,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 4,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 50,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 30,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_49--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 4,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 50,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 30,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_49--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 4,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 50,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 30,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_49--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              },
+              {
+                "stage_number": 4,
+                "way_number": 3,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 50,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "far_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 30,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "--padding_2_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_49--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 30,
+                  "hash_entry_bit_hi": 39,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 89 ], "vpns": [ 3 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.load_normal_far",
+          "handle": 536870929,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_forwarding" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "drop" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_next" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "drop" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "drop",
+              "start_bit": 0,
+              "position": 0,
+              "default_value": "0x1",
+              "bit_width": 1
+            },
+            {
+              "name": "notify_cp",
+              "start_bit": 1,
+              "position": 1,
+              "default_value": "0x0",
+              "bit_width": 1
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.load_tunnel_far",
+          "handle": 536870930,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_forwarding" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "drop" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_next" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "drop" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.needs_gtpu_encap" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.teid" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "teid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_src_port" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "action_param", "name": "tunnel_src_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "action_param", "name": "tunnel_src_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "2152" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "drop",
+              "start_bit": 0,
+              "position": 0,
+              "default_value": "0x1",
+              "bit_width": 1
+            },
+            {
+              "name": "notify_cp",
+              "start_bit": 1,
+              "position": 1,
+              "default_value": "0x0",
+              "bit_width": 1
+            },
+            {
+              "name": "tunnel_src_port",
+              "start_bit": 2,
+              "position": 2,
+              "bit_width": 16
+            },
+            {
+              "name": "tunnel_src_addr",
+              "start_bit": 18,
+              "position": 3,
+              "bit_width": 32
+            },
+            {
+              "name": "tunnel_dst_addr",
+              "start_bit": 50,
+              "position": 4,
+              "bit_width": 32
+            },
+            { "name": "teid", "start_bit": 82, "position": 5, "bit_width": 32 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.spgw.load_dbuf_far",
+          "handle": 536870931,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_forwarding" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "drop" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_next" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "action_param", "name": "drop" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.needs_gtpu_encap" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.teid" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "teid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_src_port" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "action_param", "name": "tunnel_src_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.tunnel_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_src_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_src_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.ipv4_dst_addr" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "action_param", "name": "tunnel_dst_addr" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_sport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "action_param", "name": "tunnel_src_port" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.l4_dport" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "2152" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": {
+                "type": "phv",
+                "name": "fabric_metadata.spgw.skip_egress_pdr_ctr"
+              },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "drop",
+              "start_bit": 0,
+              "position": 0,
+              "default_value": "0x1",
+              "bit_width": 1
+            },
+            {
+              "name": "notify_cp",
+              "start_bit": 1,
+              "position": 1,
+              "default_value": "0x0",
+              "bit_width": 1
+            },
+            {
+              "name": "tunnel_src_port",
+              "start_bit": 2,
+              "position": 2,
+              "bit_width": 16
+            },
+            {
+              "name": "tunnel_src_addr",
+              "start_bit": 18,
+              "position": 3,
+              "bit_width": 32
+            },
+            {
+              "name": "tunnel_dst_addr",
+              "start_bit": 50,
+              "position": 4,
+              "bit_width": 32
+            },
+            { "name": "teid", "start_bit": 82, "position": 5, "bit_width": 32 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554438,
+      "name": "FabricIngress.spgw.fars$action",
+      "table_type": "action",
+      "size": 4096,
+      "stage_tables": [
+        {
+          "stage_number": 4,
+          "size": 4096,
+          "stage_table_type": "action_data",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "tunnel_src_port"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "tunnel_src_port"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "tunnel_src_port"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "drop"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "drop"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "teid"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "tunnel_src_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "tunnel_src_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "tunnel_dst_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "tunnel_dst_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 15,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 17,
+                      "field_name": "--padding_17_31--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870931
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "drop"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "drop"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 127,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 1,
+                      "field_name": "--padding_1_127--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870929
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "tunnel_src_port"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "tunnel_src_port"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "tunnel_src_port"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "drop"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "drop"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "teid"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "tunnel_src_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "tunnel_src_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "tunnel_dst_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "tunnel_dst_addr"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 15,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 17,
+                      "field_name": "--padding_17_31--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870930
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 91 ], "vpns": [ 0 ] },
+              { "memory_units": [ 92 ], "vpns": [ 1 ] },
+              { "memory_units": [ 93 ], "vpns": [ 2 ] },
+              { "memory_units": [ 94 ], "vpns": [ 3 ] }
+            ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricIngress.spgw.load_dbuf_far",
+          "handle": 536870931,
+          "p4_parameters": [
+            { "name": "drop", "start_bit": 0, "position": 0, "bit_width": 1 },
+            {
+              "name": "notify_cp",
+              "start_bit": 1,
+              "position": 1,
+              "bit_width": 1
+            },
+            {
+              "name": "tunnel_src_port",
+              "start_bit": 2,
+              "position": 2,
+              "bit_width": 16
+            },
+            {
+              "name": "tunnel_src_addr",
+              "start_bit": 18,
+              "position": 3,
+              "bit_width": 32
+            },
+            {
+              "name": "tunnel_dst_addr",
+              "start_bit": 50,
+              "position": 4,
+              "bit_width": 32
+            },
+            { "name": "teid", "start_bit": 82, "position": 5, "bit_width": 32 }
+          ]
+        },
+        {
+          "name": "FabricIngress.spgw.load_normal_far",
+          "handle": 536870929,
+          "p4_parameters": [
+            { "name": "drop", "start_bit": 0, "position": 0, "bit_width": 1 },
+            {
+              "name": "notify_cp",
+              "start_bit": 1,
+              "position": 1,
+              "bit_width": 1
+            }
+          ]
+        },
+        {
+          "name": "FabricIngress.spgw.load_tunnel_far",
+          "handle": 536870930,
+          "p4_parameters": [
+            { "name": "drop", "start_bit": 0, "position": 0, "bit_width": 1 },
+            {
+              "name": "notify_cp",
+              "start_bit": 1,
+              "position": 1,
+              "bit_width": 1
+            },
+            {
+              "name": "tunnel_src_port",
+              "start_bit": 2,
+              "position": 2,
+              "bit_width": 16
+            },
+            {
+              "name": "tunnel_src_addr",
+              "start_bit": 18,
+              "position": 3,
+              "bit_width": 32
+            },
+            {
+              "name": "tunnel_dst_addr",
+              "start_bit": 50,
+              "position": 4,
+              "bit_width": 32
+            },
+            { "name": "teid", "start_bit": 82, "position": 5, "bit_width": 32 }
+          ]
+        }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "egress",
+      "handle": 16777248,
+      "name": "tbl_act_17",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 1,
+            "has_attached_gateway": true,
+            "default_next_table": 66,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 0 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 4,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "act_18",
+                  "action_handle": 536871020,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 66,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 65,
+                  "next_tables": [
+                    {
+                      "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
+                      "next_table_logical_id": 2,
+                      "next_table_stage_no": 4
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "act_18",
+          "handle": 536871020,
+          "primitives": [
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.int_header.total_hop_cnt" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.int_header.total_hop_cnt" },
+              "src2": { "type": "immediate", "name": "1" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536871020,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_17",
+      "handle": 1879048206,
+      "name": "cond-29",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 100, "true": 65 },
+          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "tbl_egress_next_set_mpls", "true": "tbl_act_17" },
+          "logical_table_id": 1,
+          "stage_number": 4,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        {
+          "name": "process_int_main_process_int_transit_hasReturned",
+          "start_bit": 4,
+          "bit_width": 1
+        }
+      ],
+      "condition": "(!process_int_main_process_int_transit_hasReturned)",
       "size": 0
     },
     {
       "direction": "egress",
-      "handle": 16777263,
-      "name": "tbl_act_30",
+      "handle": 16777249,
+      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
+      "table_type": "match",
+      "size": 1024,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554444,
+          "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536871002,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "hdr.int_header.instruction_mask_0003",
+          "start_bit": 0,
+          "bit_width": 4,
+          "bit_width_full": 4,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "hdr.int_header",
+          "field_name": "instruction_mask_0003"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 1024,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": false,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "hdr.int_header.instruction_mask_0003",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "hdr.int_header.instruction_mask_0003",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "hdr.int_header.instruction_mask_0003",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "hdr.int_header.instruction_mask_0003",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 0
+                  }
+                ],
+                "hash_function_number": 1,
+                "ghost_bit_to_hash_bit": [ [ 0 ], [ 1 ], [ 2 ], [ 3 ] ],
+                "ghost_bit_info": [
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0003",
+                    "bit_in_match_spec": 0
+                  },
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0003",
+                    "bit_in_match_spec": 1
+                  },
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0003",
+                    "bit_in_match_spec": 2
+                  },
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0003",
+                    "bit_in_match_spec": 3
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536871002,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 4294967295,
+                "next_table_full": 85,
+                "vliw_instruction": -1,
+                "vliw_instruction_full": 67,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
+                "action_handle": 536870986,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 64,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
+                "action_handle": 536870987,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
+                "action_handle": 536870988,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 4,
+                "vliw_instruction_full": 68,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
+                "action_handle": 536870989,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 6,
+                "vliw_instruction_full": 70,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
+                "action_handle": 536870990,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 8,
+                "vliw_instruction_full": 72,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
+                "action_handle": 536870991,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 10,
+                "vliw_instruction_full": 74,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
+                "action_handle": 536870992,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 12,
+                "vliw_instruction_full": 76,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
+                "action_handle": 536870993,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 14,
+                "vliw_instruction_full": 78,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
+                "action_handle": 536870994,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 16,
+                "vliw_instruction_full": 80,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
+                "action_handle": 536870995,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 18,
+                "vliw_instruction_full": 82,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
+                "action_handle": 536870996,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 20,
+                "vliw_instruction_full": 84,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
+                "action_handle": 536870997,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 22,
+                "vliw_instruction_full": 86,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
+                "action_handle": 536870998,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 24,
+                "vliw_instruction_full": 88,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+                "action_handle": 536870999,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 26,
+                "vliw_instruction_full": 90,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+                "action_handle": 536871000,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 28,
+                "vliw_instruction_full": 92,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+                "action_handle": 536871001,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 85,
+                "vliw_instruction": 30,
+                "vliw_instruction_full": 94,
+                "next_tables": [
+                  {
+                    "next_table_name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 5
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_16",
+                    "param_type": "constant",
+                    "const_value": 16,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 15 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 16,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 6,
+                          "field_name": "immediate",
+                          "match_mode": "unused"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 6,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action",
+                          "match_mode": "unused"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 30,
+                    "stash_match_data_select": 1,
+                    "stash_hashbank_select": 1,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 31,
+                    "stash_match_data_select": 1,
+                    "stash_hashbank_select": 1,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 4,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 6,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 16,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 6,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 90,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 22,
+                            "field_name": "--padding_22_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536871002,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
+          "handle": 536870986,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
+          "handle": 536870987,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
+          "handle": 536870988,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
+          "handle": 536870989,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
+          "handle": 536870990,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
+          "handle": 536870991,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
+          "handle": 536870992,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
+          "handle": 536870993,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
+          "handle": 536870994,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
+          "handle": 536870995,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
+          "handle": 536870996,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
+          "handle": 536870997,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
+          "handle": 536870998,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+          "handle": 536870999,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+          "handle": 536871000,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+          "handle": 536871001,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_occupancy.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_hop_latency.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_port_ids.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_switch_id.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "4" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "16" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": [
+        {
+          "priority": 0,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x0"
+            }
+          ],
+          "action_handle": 536870986,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 1,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x1"
+            }
+          ],
+          "action_handle": 536870987,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 2,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x2"
+            }
+          ],
+          "action_handle": 536870988,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 3,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x3"
+            }
+          ],
+          "action_handle": 536870989,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 4,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x4"
+            }
+          ],
+          "action_handle": 536870990,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 5,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x5"
+            }
+          ],
+          "action_handle": 536870991,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 6,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x6"
+            }
+          ],
+          "action_handle": 536870992,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 7,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x7"
+            }
+          ],
+          "action_handle": 536870993,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 8,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x8"
+            }
+          ],
+          "action_handle": 536870994,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 9,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0x9"
+            }
+          ],
+          "action_handle": 536870995,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 10,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0xa"
+            }
+          ],
+          "action_handle": 536870996,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 11,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0xb"
+            }
+          ],
+          "action_handle": 536870997,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 12,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0xc"
+            }
+          ],
+          "action_handle": 536870998,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 13,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0xd"
+            }
+          ],
+          "action_handle": 536870999,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 14,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0xe"
+            }
+          ],
+          "action_handle": 536871000,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 15,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0003",
+              "value": "0xf"
+            }
+          ],
+          "action_handle": 536871001,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        }
+      ]
+    },
+    {
+      "direction": "egress",
+      "handle": 33554444,
+      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003$action",
+      "table_type": "action",
+      "size": 2048,
+      "stage_tables": [
+        {
+          "stage_number": 4,
+          "size": 2048,
+          "stage_table_type": "action_data",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870986
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870987
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "--padding_20_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "--padding_24_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 116,
+                      "field_name": "--padding_52_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "--padding_56_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "--padding_20_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "--padding_24_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 52,
+                      "field_name": "--padding_52_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "--padding_56_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870996
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "--padding_20_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 116,
+                      "field_name": "--padding_52_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "--padding_20_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 52,
+                      "field_name": "--padding_52_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870997
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870998
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "--padding_21_23--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "--padding_53_55--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "--padding_21_23--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "--padding_53_55--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870999
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "--padding_24_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "--padding_56_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "--padding_24_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "--padding_56_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871000
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871001
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870988
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870989
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870990
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 116,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 20,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_19--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "--padding_21_23--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "--padding_25_51--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "--padding_53_55--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 52,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 20,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_19--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "--padding_21_23--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_51--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "--padding_53_55--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870991
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 116,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 20,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_19--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 28,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "--padding_24_51--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "--padding_56_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 52,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 20,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_19--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 28,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "--padding_24_51--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "--padding_56_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870992
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 116,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 20,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_19--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "--padding_25_51--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 52,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 20,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_19--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "--padding_21_22--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_51--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "--padding_53_54--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870993
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870994
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 84,
+                      "field_name": "--padding_20_23--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 116,
+                      "field_name": "--padding_52_55--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 19,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_18--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 20,
+                      "field_name": "--padding_20_23--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_50--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 52,
+                      "field_name": "--padding_52_55--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870995
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871002
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 78 ], "vpns": [ 0 ] } ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
+          "handle": 536870986,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
+          "handle": 536870987,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
+          "handle": 536870996,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
+          "handle": 536870997,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
+          "handle": 536870998,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+          "handle": 536870999,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+          "handle": 536871000,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+          "handle": 536871001,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
+          "handle": 536870988,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
+          "handle": 536870989,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
+          "handle": 536870990,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
+          "handle": 536870991,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
+          "handle": 536870992,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
+          "handle": 536870993,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
+          "handle": 536870994,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
+          "handle": 536870995,
+          "p4_parameters": []
+        },
+        { "name": "NoAction", "handle": 536871002, "p4_parameters": [] }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777225,
+      "name": "tbl_act_2",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -142208,9 +126096,9 @@
             "stage_number": 5,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 3,
-            "has_attached_gateway": true,
-            "default_next_table": 84,
+            "logical_table_id": 0,
+            "has_attached_gateway": false,
+            "default_next_table": 81,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -143063,17 +126951,17 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_30",
-                  "action_handle": 536871026,
+                  "action_name": "act_2",
+                  "action_handle": 536870932,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 84,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
+                  "next_table_full": 81,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 65,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_31",
-                      "next_table_logical_id": 4,
+                      "next_table_name": "tbl_act_3",
+                      "next_table_logical_id": 1,
                       "next_table_stage_no": 5
                     }
                   ],
@@ -143092,16 +126980,15 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_30",
-          "handle": 536871026,
+          "name": "act_2",
+          "handle": 536870932,
           "primitives": [
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.udp.len" },
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.spgw.ipv4_len" },
               "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "hdr.udp.len" },
-              "src2": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" }
+              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" }
             }
           ],
           "indirect_resources": [],
@@ -143122,7 +127009,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536871026,
+      "default_action_handle": 536870932,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -143133,31 +127020,9 @@
       "static_entries": []
     },
     {
-      "direction": "egress",
-      "attached_to": "tbl_act_30",
-      "handle": 1879048214,
-      "name": "cond-36",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 84, "true": 83 },
-          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_31", "true": "tbl_act_30" },
-          "logical_table_id": 3,
-          "stage_number": 5,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.udp.$valid", "start_bit": 7, "bit_width": 1 } ],
-      "condition": "(hdr.udp.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777264,
-      "name": "tbl_act_31",
+      "direction": "ingress",
+      "handle": 16777226,
+      "name": "tbl_act_3",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -143166,9 +127031,9 @@
             "stage_number": 5,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 4,
+            "logical_table_id": 1,
             "has_attached_gateway": true,
-            "default_next_table": 85,
+            "default_next_table": 82,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -144021,17 +127886,17 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_31",
-                  "action_handle": 536871027,
+                  "action_name": "act_3",
+                  "action_handle": 536870933,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 85,
+                  "next_table_full": 82,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 67,
+                  "vliw_instruction_full": 66,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_egress_next_set_mpls",
-                      "next_table_logical_id": 5,
+                      "next_table_name": "FabricIngress.filtering.fwd_classifier",
+                      "next_table_logical_id": 2,
                       "next_table_stage_no": 5
                     }
                   ],
@@ -144050,16 +127915,29 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_31",
-          "handle": 536871027,
+          "name": "act_3",
+          "handle": 536870933,
           "primitives": [
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.intl4_shim.len_words" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.intl4_shim.len_words" },
-              "src2": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" }
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.vlan_id" },
+              "dst_mask": { "type": "immediate", "name": "4095" },
+              "src1": { "type": "phv", "name": "hdr.vlan_tag.vlan_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.vlan_pri" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "hdr.vlan_tag.pri" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.vlan_cfi" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "hdr.vlan_tag.cfi" }
             }
           ],
           "indirect_resources": [],
@@ -144080,7 +127958,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536871027,
+      "default_action_handle": 536870933,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -144091,72 +127969,910 @@
       "static_entries": []
     },
     {
-      "direction": "egress",
-      "attached_to": "tbl_act_31",
-      "handle": 1879048215,
-      "name": "cond-37",
+      "direction": "ingress",
+      "attached_to": "tbl_act_3",
+      "handle": 1879048207,
+      "name": "cond-6",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 85, "true": 84 },
-          "memory_resource_allocation": { "memory_unit": 12, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_egress_next_set_mpls", "true": "tbl_act_31" },
-          "logical_table_id": 4,
-          "stage_number": 5,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [ { "name": "hdr.intl4_shim.$valid", "start_bit": 3, "bit_width": 1 } ],
-      "condition": "(hdr.intl4_shim.$valid == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_egress_next_set_mpls",
-      "handle": 1879048216,
-      "name": "cond-22",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 85, "true": 86 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 82, "true": 81 },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
-            "false": "tbl_egress_next_set_mpls",
-            "true": "tbl_egress_next_pop_mpls_if_present"
+            "false": "FabricIngress.filtering.fwd_classifier",
+            "true": "tbl_act_3"
           },
-          "logical_table_id": 5,
+          "logical_table_id": 1,
           "stage_number": 5,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [
-        {
-          "name": "fabric_metadata.mpls_label.0-3",
-          "start_bit": 4,
-          "bit_width": 4
-        },
-        {
-          "name": "fabric_metadata.mpls_label.4-19",
-          "start_bit": 8,
-          "bit_width": 8
-        },
-        {
-          "name": "fabric_metadata.mpls_label.4-19",
-          "start_bit": 16,
-          "bit_width": 8
-        }
-      ],
-      "condition": "(fabric_metadata.mpls_label == 0)",
+      "condition_fields": [ { "name": "hdr.vlan_tag.$valid", "start_bit": 3, "bit_width": 1 } ],
+      "condition": "(hdr.vlan_tag.$valid == 1)",
       "size": 0
     },
     {
-      "direction": "egress",
-      "handle": 16777265,
-      "name": "tbl_egress_next_set_mpls",
+      "direction": "ingress",
+      "handle": 16777227,
+      "name": "FabricIngress.filtering.fwd_classifier",
+      "table_type": "match",
+      "size": 128,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 5,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": false,
+            "default_next_table": 83,
+            "pack_format": [
+              {
+                "table_word_width": 141,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 3,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_payload_1--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_1--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_payload_2--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_2--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_type",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 32,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "eth_type",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ig_port",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 9
+                      },
+                      {
+                        "field_name": "ip_eth_type",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 24,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 28,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 34
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 10,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 7
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 0, 1, 2 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 2
+            },
+            "result_physical_buses": [ 0 ],
+            "ternary_indirection_stage_table": {
+              "action_format": [
+                {
+                  "action_name": "FabricIngress.filtering.set_forwarding_type",
+                  "action_handle": 536870938,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 83,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 67,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_5",
+                      "next_table_logical_id": 3,
+                      "next_table_stage_no": 5
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ],
+              "memory_resource_allocation": null,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "entries": [ { "entry_number": 0, "fields": [] } ],
+                  "table_word_width": 0,
+                  "number_memory_units_per_table_word": 0
+                }
+              ],
+              "logical_table_id": 2,
+              "stage_number": 5,
+              "stage_table_type": "ternary_indirection",
+              "size": 0
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554439,
+          "name": "FabricIngress.filtering.fwd_classifier$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108866,
+          "name": "FabricIngress.filtering.fwd_classifier_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870938,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ig_port",
+          "global_name": "ig_intr_md.ingress_port",
+          "start_bit": 0,
+          "bit_width": 9,
+          "bit_width_full": 9,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "ig_intr_md",
+          "field_name": "ingress_port"
+        },
+        {
+          "name": "eth_dst",
+          "global_name": "hdr.ethernet.dst_addr",
+          "start_bit": 0,
+          "bit_width": 48,
+          "bit_width_full": 48,
+          "position": 1,
+          "match_type": "ternary",
+          "is_valid": false,
+          "instance_name": "hdr.ethernet",
+          "field_name": "dst_addr"
+        },
+        {
+          "name": "eth_type",
+          "global_name": "hdr.eth_type.value",
+          "start_bit": 0,
+          "bit_width": 16,
+          "bit_width_full": 16,
+          "position": 2,
+          "match_type": "ternary",
+          "is_valid": false,
+          "instance_name": "hdr.eth_type",
+          "field_name": "value"
+        },
+        {
+          "name": "ip_eth_type",
+          "global_name": "fabric_metadata.ip_eth_type",
+          "start_bit": 0,
+          "bit_width": 16,
+          "bit_width_full": 16,
+          "position": 3,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "ip_eth_type"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "actions": [
+        {
+          "name": "FabricIngress.filtering.set_forwarding_type",
+          "handle": 536870938,
+          "primitives": [
+            {
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricIngress.filtering.fwd_classifier_counter"
+              }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.fwd_type" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "action_param", "name": "fwd_type" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.next_id" },
+              "dst_mask": { "type": "immediate", "name": "16777215" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "compiler_generated_meta.mirror_id" },
+              "dst_mask": { "type": "immediate", "name": "1023" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "compiler_generated_meta.mirror_source" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "ig_intr_md_for_dprsr.drop_ctl" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "immediate", "name": "0" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "fwd_type",
+              "start_bit": 0,
+              "position": 0,
+              "default_value": "0x0",
+              "bit_width": 3
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108866,
+      "name": "FabricIngress.filtering.fwd_classifier_counter",
+      "table_type": "statistics",
+      "size": 1024,
+      "stage_tables": [
+        {
+          "stage_number": 5,
+          "size": 1024,
+          "stage_table_type": "statistics",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 78 ], "vpns": [ 0 ] } ],
+            "spare_bank_memory_unit": 79
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 64,
+      "packet_counter_resolution": 64,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554439,
+      "name": "FabricIngress.filtering.fwd_classifier$action",
+      "table_type": "action",
+      "size": 16384,
+      "stage_tables": [
+        {
+          "stage_number": 5,
+          "size": 16384,
+          "stage_table_type": "action_data",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 16,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 15,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 14,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 112,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 115,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 13,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 104,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 107,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 12,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 99,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 11,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 10,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 83,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 9,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 72,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 75,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 8,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 67,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 7,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 6,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 51,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 5,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 40,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 43,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 4,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 35,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 3,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 2,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 19,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 11,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "fwd_type"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 3,
+                      "field_name": "--padding_3_7--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870938
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricIngress.filtering.set_forwarding_type",
+          "handle": 536870938,
+          "p4_parameters": [
+            {
+              "name": "fwd_type",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 3
+            }
+          ]
+        }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777228,
+      "name": "tbl_act_5",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -144165,9 +128881,9 @@
             "stage_number": 5,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 5,
-            "has_attached_gateway": true,
-            "default_next_table": 87,
+            "logical_table_id": 3,
+            "has_attached_gateway": false,
+            "default_next_table": 84,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -145020,17 +129736,17 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "FabricEgress.egress_next.set_mpls",
-                  "action_handle": 536870975,
+                  "action_name": "act_5",
+                  "action_handle": 536870965,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 87,
-                  "vliw_instruction": 1,
+                  "next_table_full": 84,
+                  "vliw_instruction": 0,
                   "vliw_instruction_full": 68,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_20",
-                      "next_table_logical_id": 7,
+                      "next_table_name": "tbl_act_4",
+                      "next_table_logical_id": 4,
                       "next_table_stage_no": 5
                     }
                   ],
@@ -145049,47 +129765,15 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "FabricEgress.egress_next.set_mpls",
-          "handle": 536870975,
+          "name": "act_5",
+          "handle": 536870965,
           "primitives": [
             {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.mpls.$valid" }
-            },
-            {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.mpls.label" },
-              "dst_mask": { "type": "immediate", "name": "1048575" },
-              "src1": { "type": "phv", "name": "fabric_metadata.mpls_label" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.mpls.tc" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.mpls.bos" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.mpls.ttl" },
-              "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "fabric_metadata.mpls_ttl" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.eth_type.value" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "immediate", "name": "0x8847" }
+              "dst": { "type": "phv", "name": "ig_intr_md_from_prsr.global_tstamp" },
+              "dst_mask": { "type": "immediate", "name": "0" },
+              "src1": { "type": "phv", "name": "ig_intr_md_from_prsr.global_tstamp" }
             }
           ],
           "indirect_resources": [],
@@ -145110,7 +129794,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870975,
+      "default_action_handle": 536870965,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -145121,9 +129805,9 @@
       "static_entries": []
     },
     {
-      "direction": "egress",
-      "handle": 16777266,
-      "name": "tbl_egress_next_pop_mpls_if_present",
+      "direction": "ingress",
+      "handle": 16777229,
+      "name": "tbl_act_4",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -145132,9 +129816,9 @@
             "stage_number": 5,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 6,
+            "logical_table_id": 4,
             "has_attached_gateway": true,
-            "default_next_table": 87,
+            "default_next_table": 96,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -145987,18 +130671,18 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "FabricEgress.egress_next.pop_mpls_if_present",
-                  "action_handle": 536870974,
+                  "action_name": "act_4",
+                  "action_handle": 536870934,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 87,
+                  "next_table_full": 96,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 70,
+                  "vliw_instruction_full": 69,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_20",
-                      "next_table_logical_id": 7,
-                      "next_table_stage_no": 5
+                      "next_table_name": "FabricIngress.filtering.ingress_port_vlan",
+                      "next_table_logical_id": 0,
+                      "next_table_stage_no": 6
                     }
                   ],
                   "immediate_fields": []
@@ -146016,19 +130700,15 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "FabricEgress.egress_next.pop_mpls_if_present",
-          "handle": 536870974,
+          "name": "act_4",
+          "handle": 536870934,
           "primitives": [
             {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.mpls.$valid" }
-            },
-            {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.eth_type.value" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "phv", "name": "fabric_metadata.ip_eth_type" }
+              "dst": { "type": "phv", "name": "fabric_metadata.mpls_ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "immediate", "name": "65" }
             }
           ],
           "indirect_resources": [],
@@ -146049,7 +130729,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870974,
+      "default_action_handle": 536870934,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -146060,45 +130740,4678 @@
       "static_entries": []
     },
     {
-      "direction": "egress",
-      "attached_to": "tbl_egress_next_pop_mpls_if_present",
-      "handle": 1879048217,
-      "name": "cond-23",
+      "direction": "ingress",
+      "attached_to": "tbl_act_4",
+      "handle": 1879048208,
+      "name": "cond-7",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 87, "true": 86 },
+          "next_tables": { "false": 96, "true": 84 },
           "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
-            "false": "tbl_act_20",
-            "true": "tbl_egress_next_pop_mpls_if_present"
+            "false": "FabricIngress.filtering.ingress_port_vlan",
+            "true": "tbl_act_4"
           },
-          "logical_table_id": 6,
+          "logical_table_id": 4,
           "stage_number": 5,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.mpls.$valid", "start_bit": 0, "bit_width": 1 } ],
-      "condition": "(hdr.mpls.$valid == 1)",
+      "condition_fields": [ { "name": "hdr.mpls.$valid", "start_bit": 6, "bit_width": 1 } ],
+      "condition": "(!(hdr.mpls.$valid == 1))",
       "size": 0
     },
     {
       "direction": "egress",
-      "handle": 16777267,
-      "name": "tbl_act_20",
+      "handle": 16777250,
+      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+      "table_type": "match",
+      "size": 1024,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554445,
+          "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "default_action_handle": 536871019,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "hdr.int_header.instruction_mask_0407",
+          "start_bit": 0,
+          "bit_width": 4,
+          "bit_width_full": 4,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "hdr.int_header",
+          "field_name": "instruction_mask_0407"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 5,
+            "size": 1024,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 5,
+            "has_attached_gateway": false,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "hdr.int_header.instruction_mask_0407",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "hdr.int_header.instruction_mask_0407",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "hdr.int_header.instruction_mask_0407",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "hdr.int_header.instruction_mask_0407",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 0
+                  }
+                ],
+                "hash_function_number": 0,
+                "ghost_bit_to_hash_bit": [ [ 0 ], [ 1 ], [ 2 ], [ 3 ] ],
+                "ghost_bit_info": [
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0407",
+                    "bit_in_match_spec": 0
+                  },
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0407",
+                    "bit_in_match_spec": 1
+                  },
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0407",
+                    "bit_in_match_spec": 2
+                  },
+                  {
+                    "field_name": "hdr.int_header.instruction_mask_0407",
+                    "bit_in_match_spec": 3
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536871019,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 4294967295,
+                "next_table_full": 97,
+                "vliw_instruction": -1,
+                "vliw_instruction_full": 67,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
+                "action_handle": 536871003,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 64,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
+                "action_handle": 536871004,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 65,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
+                "action_handle": 536871005,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
+                "action_handle": 536871006,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 4,
+                "vliw_instruction_full": 68,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
+                "action_handle": 536871007,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 6,
+                "vliw_instruction_full": 70,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
+                "action_handle": 536871008,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 8,
+                "vliw_instruction_full": 72,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
+                "action_handle": 536871009,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 10,
+                "vliw_instruction_full": 74,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
+                "action_handle": 536871010,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 12,
+                "vliw_instruction_full": 76,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
+                "action_handle": 536871011,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 14,
+                "vliw_instruction_full": 78,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
+                "action_handle": 536871012,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 16,
+                "vliw_instruction_full": 80,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
+                "action_handle": 536871013,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 18,
+                "vliw_instruction_full": 82,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_8",
+                    "param_type": "constant",
+                    "const_value": 8,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
+                "action_handle": 536871014,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 20,
+                "vliw_instruction_full": 84,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
+                "action_handle": 536871015,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 22,
+                "vliw_instruction_full": 86,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+                "action_handle": 536871016,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 24,
+                "vliw_instruction_full": 88,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+                "action_handle": 536871017,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 26,
+                "vliw_instruction_full": 90,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_12",
+                    "param_type": "constant",
+                    "const_value": 12,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              },
+              {
+                "action_name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+                "action_handle": 536871018,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 97,
+                "vliw_instruction": 28,
+                "vliw_instruction_full": 92,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_18",
+                    "next_table_logical_id": 1,
+                    "next_table_stage_no": 6
+                  }
+                ],
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_16",
+                    "param_type": "constant",
+                    "const_value": 16,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 16,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 6,
+                          "field_name": "immediate",
+                          "match_mode": "unused"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 6,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action",
+                          "match_mode": "unused"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 28,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 29,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 5,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 6,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 16,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 6,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 90,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 22,
+                            "field_name": "--padding_22_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536871019,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
+          "handle": 536871003,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
+          "handle": 536871004,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
+          "handle": 536871005,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
+          "handle": 536871006,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
+          "handle": 536871007,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
+          "handle": 536871008,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
+          "handle": 536871009,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
+          "handle": 536871010,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
+          "handle": 536871011,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "4" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
+          "handle": 536871012,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
+          "handle": 536871013,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
+          "handle": 536871014,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
+          "handle": 536871015,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "2" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "8" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+          "handle": 536871016,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+          "handle": 536871017,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "3" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "12" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+          "handle": 536871018,
+          "primitives": [
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tx_util.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_q_congestion.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_egress_tstamp.$valid" }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.int_ingress_tstamp.$valid" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" },
+              "src2": { "type": "immediate", "name": "4" }
+            },
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" },
+              "src2": { "type": "immediate", "name": "16" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": [
+        {
+          "priority": 0,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x0"
+            }
+          ],
+          "action_handle": 536871003,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 1,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x1"
+            }
+          ],
+          "action_handle": 536871004,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 2,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x2"
+            }
+          ],
+          "action_handle": 536871005,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 3,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x3"
+            }
+          ],
+          "action_handle": 536871006,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 4,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x4"
+            }
+          ],
+          "action_handle": 536871007,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 5,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x5"
+            }
+          ],
+          "action_handle": 536871008,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 6,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x6"
+            }
+          ],
+          "action_handle": 536871009,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 7,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x7"
+            }
+          ],
+          "action_handle": 536871010,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 8,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x8"
+            }
+          ],
+          "action_handle": 536871011,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 9,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0x9"
+            }
+          ],
+          "action_handle": 536871012,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 10,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0xa"
+            }
+          ],
+          "action_handle": 536871013,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 11,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0xb"
+            }
+          ],
+          "action_handle": 536871014,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 12,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0xc"
+            }
+          ],
+          "action_handle": 536871015,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 13,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0xd"
+            }
+          ],
+          "action_handle": 536871016,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 14,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0xe"
+            }
+          ],
+          "action_handle": 536871017,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        },
+        {
+          "priority": 15,
+          "match_key_fields_values": [
+            {
+              "field_name": "hdr.int_header.instruction_mask_0407",
+              "value": "0xf"
+            }
+          ],
+          "action_handle": 536871018,
+          "is_default_entry": false,
+          "action_parameters_values": []
+        }
+      ]
+    },
+    {
+      "direction": "egress",
+      "handle": 33554445,
+      "name": "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407$action",
+      "table_type": "action",
+      "size": 2048,
+      "stage_tables": [
+        {
+          "stage_number": 5,
+          "size": 2048,
+          "stage_table_type": "action_data",
+          "logical_table_id": 5,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871003
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871004
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "--padding_22_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "--padding_26_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 118,
+                      "field_name": "--padding_54_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 6,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 122,
+                      "field_name": "--padding_58_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "--padding_22_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "--padding_26_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 54,
+                      "field_name": "--padding_54_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 6,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 58,
+                      "field_name": "--padding_58_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871013
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "--padding_22_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 118,
+                      "field_name": "--padding_54_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "--padding_22_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 54,
+                      "field_name": "--padding_54_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871014
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871015
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 122,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "--padding_23_25--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "--padding_55_57--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 58,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "--padding_23_25--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "--padding_55_57--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871016
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "--padding_26_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 6,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 122,
+                      "field_name": "--padding_58_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "--padding_26_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 6,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 58,
+                      "field_name": "--padding_58_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871017
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "$constant6"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871018
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871005
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 8, "dest_width": 16 } ],
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "--padding_16_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871006
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871007
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 118,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 122,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 22,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_21--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "--padding_23_25--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_27_53--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "--padding_55_57--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 54,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 58,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 22,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_21--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "--padding_23_25--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_27_53--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "--padding_55_57--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871008
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 118,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 22,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_21--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 28,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "--padding_26_53--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 6,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 122,
+                      "field_name": "--padding_58_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 54,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 22,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_21--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 28,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "--padding_26_53--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 6,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 58,
+                      "field_name": "--padding_58_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871009
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 89,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 118,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 121,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 22,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_21--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 87,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_27_53--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 119,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 54,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 3, "dest_width": 2 } ],
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "$constant5"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 22,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_21--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 23,
+                      "field_name": "--padding_23_24--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 27,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_27_53--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 2,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 55,
+                      "field_name": "--padding_55_56--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871010
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871011
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 90,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 85,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 117,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 122,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 86,
+                      "field_name": "--padding_22_25--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 91,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 118,
+                      "field_name": "--padding_54_57--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 123,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 26,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 21,
+                      "field_name": "$constant2"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 53,
+                      "field_name": "$constant3"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "enable_pfe": false,
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 58,
+                      "field_name": "$constant4"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 21,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_20--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 22,
+                      "field_name": "--padding_22_25--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 26,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 27,
+                      "field_name": "--padding_27_52--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 54,
+                      "field_name": "--padding_54_57--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 5,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 59,
+                      "field_name": "--padding_59_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871012
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 64,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_63--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536871019
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 0 ] } ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
+          "handle": 536871003,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
+          "handle": 536871004,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
+          "handle": 536871013,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
+          "handle": 536871014,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
+          "handle": 536871015,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+          "handle": 536871016,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+          "handle": 536871017,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+          "handle": 536871018,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
+          "handle": 536871005,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
+          "handle": 536871006,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
+          "handle": 536871007,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
+          "handle": 536871008,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
+          "handle": 536871009,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
+          "handle": 536871010,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
+          "handle": 536871011,
+          "p4_parameters": []
+        },
+        {
+          "name": "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
+          "handle": 536871012,
+          "p4_parameters": []
+        },
+        { "name": "NoAction", "handle": 536871019, "p4_parameters": [] }
+      ],
+      "static_entries": [],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777230,
+      "name": "FabricIngress.filtering.ingress_port_vlan",
+      "table_type": "match",
+      "size": 2048,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 6,
+            "size": 2048,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": false,
+            "default_next_table": 112,
+            "pack_format": [
+              {
+                "table_word_width": 47,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "vlan_is_valid",
+                        "lsb_mem_word_offset": 4,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "ig_port",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "ig_port",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "vlan_id",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "vlan_id",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 3
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 5,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 10,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 7
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 29,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "--unused--",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "zero",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [
+                { "memory_units": [ 0 ], "vpns": [ 0 ] },
+                { "memory_units": [ 1 ], "vpns": [ 1 ] },
+                { "memory_units": [ 2 ], "vpns": [ 2 ] },
+                { "memory_units": [ 3 ], "vpns": [ 3 ] }
+              ],
+              "spare_bank_memory_unit": 3
+            },
+            "result_physical_buses": [ 0 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 6,
+              "stage_table_type": "ternary_indirection",
+              "size": 4096,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 4,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 16,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 98,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 14,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 114,
+                          "field_name": "--padding_18_31--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 16,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 66,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 14,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 82,
+                          "field_name": "--padding_18_31--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 16,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 34,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 14,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 50,
+                          "field_name": "--padding_18_31--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 16,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 2,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 14,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 18,
+                          "field_name": "--padding_18_31--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": {
+                "memory_type": "sram",
+                "memory_units_and_vpns": [ { "memory_units": [ 2 ], "vpns": [ 0 ] } ],
+                "spare_bank_memory_unit": 2
+              },
+              "action_format": [
+                {
+                  "action_name": "FabricIngress.filtering.deny",
+                  "action_handle": 536870935,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 112,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 65,
+                  "next_tables": [
+                    {
+                      "next_table_name": "",
+                      "next_table_logical_id": 0,
+                      "next_table_stage_no": 7
+                    }
+                  ],
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "FabricIngress.filtering.permit",
+                  "action_handle": 536870936,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 112,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 64,
+                  "next_tables": [
+                    {
+                      "next_table_name": "",
+                      "next_table_logical_id": 0,
+                      "next_table_stage_no": 7
+                    }
+                  ],
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "FabricIngress.filtering.permit_with_internal_vlan",
+                  "action_handle": 536870937,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 112,
+                  "vliw_instruction": 2,
+                  "vliw_instruction_full": 66,
+                  "next_tables": [
+                    {
+                      "next_table_name": "",
+                      "next_table_logical_id": 0,
+                      "next_table_stage_no": 7
+                    }
+                  ],
+                  "immediate_fields": [
+                    {
+                      "param_name": "vlan_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 8,
+                      "dest_width": 8
+                    },
+                    {
+                      "param_name": "vlan_id",
+                      "param_type": "parameter",
+                      "param_shift": 8,
+                      "dest_start": 0,
+                      "dest_width": 4
+                    }
+                  ]
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108867,
+          "name": "FabricIngress.filtering.ingress_port_vlan_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "FabricIngress.filtering.deny",
+          "handle": 536870935,
+          "primitives": [
+            {
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricIngress.filtering.ingress_port_vlan_counter"
+              }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_forwarding" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.skip_next" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.filtering.permit",
+          "handle": 536870936,
+          "primitives": [
+            {
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricIngress.filtering.ingress_port_vlan_counter"
+              }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricIngress.filtering.permit_with_internal_vlan",
+          "handle": 536870937,
+          "primitives": [
+            {
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricIngress.filtering.ingress_port_vlan_counter"
+              }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "fabric_metadata.vlan_id" },
+              "dst_mask": { "type": "immediate", "name": "4095" },
+              "src1": { "type": "action_param", "name": "vlan_id" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [
+            {
+              "name": "vlan_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 12
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536870935,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ig_port",
+          "global_name": "ig_intr_md.ingress_port",
+          "start_bit": 0,
+          "bit_width": 9,
+          "bit_width_full": 9,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "ig_intr_md",
+          "field_name": "ingress_port"
+        },
+        {
+          "name": "vlan_is_valid",
+          "global_name": "hdr.vlan_tag.$valid",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "position": 1,
+          "match_type": "exact",
+          "is_valid": true,
+          "instance_name": "hdr.vlan_tag",
+          "field_name": "$valid"
+        },
+        {
+          "name": "vlan_id",
+          "global_name": "hdr.vlan_tag.vlan_id",
+          "start_bit": 0,
+          "bit_width": 12,
+          "bit_width_full": 12,
+          "position": 2,
+          "match_type": "ternary",
+          "is_valid": false,
+          "instance_name": "hdr.vlan_tag",
+          "field_name": "vlan_id"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108867,
+      "name": "FabricIngress.filtering.ingress_port_vlan_counter",
+      "table_type": "statistics",
+      "size": 2048,
+      "stage_tables": [
+        {
+          "stage_number": 6,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 64,
+      "packet_counter_resolution": 64,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "egress",
+      "handle": 16777251,
+      "name": "tbl_act_18",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
         "stage_tables": [
           {
-            "stage_number": 5,
+            "stage_number": 6,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 7,
+            "logical_table_id": 1,
             "has_attached_gateway": true,
-            "default_next_table": 88,
+            "default_next_table": 98,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -146133,9 +135446,1925 @@
               }
             ],
             "memory_resource_allocation": null,
-            "result_physical_buses": [ 0 ],
+            "result_physical_buses": [ 5 ],
             "ternary_indirection_stage_table": {
-              "stage_number": 5,
+              "stage_number": 6,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "act_17",
+                  "action_handle": 536871021,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 98,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 65,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_19",
+                      "next_table_logical_id": 2,
+                      "next_table_stage_no": 6
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "act_17",
+          "handle": 536871021,
+          "primitives": [
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.ipv4.total_len" },
+              "src2": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536871021,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_18",
+      "handle": 1879048209,
+      "name": "cond-30",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 98, "true": 97 },
+          "memory_resource_allocation": { "memory_unit": 4, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "tbl_act_19", "true": "tbl_act_18" },
+          "logical_table_id": 1,
+          "stage_number": 6,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [ { "name": "hdr.ipv4.$valid", "start_bit": 0, "bit_width": 1 } ],
+      "condition": "(hdr.ipv4.$valid == 1)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 16777252,
+      "name": "tbl_act_19",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 6,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": true,
+            "default_next_table": 99,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 4 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 6,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "act_19",
+                  "action_handle": 536871022,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 99,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 66,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_20",
+                      "next_table_logical_id": 3,
+                      "next_table_stage_no": 6
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "act_19",
+          "handle": 536871022,
+          "primitives": [
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.udp.len" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "hdr.udp.len" },
+              "src2": { "type": "phv", "name": "fabric_metadata.int_meta.new_bytes" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536871022,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_19",
+      "handle": 1879048210,
+      "name": "cond-31",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 99, "true": 98 },
+          "memory_resource_allocation": { "memory_unit": 3, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "tbl_act_20", "true": "tbl_act_19" },
+          "logical_table_id": 2,
+          "stage_number": 6,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [ { "name": "hdr.udp.$valid", "start_bit": 5, "bit_width": 1 } ],
+      "condition": "(hdr.udp.$valid == 1)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 16777253,
+      "name": "tbl_act_20",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 6,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 3,
+            "has_attached_gateway": true,
+            "default_next_table": 100,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 3 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 6,
               "stage_table_type": "ternary_indirection",
               "size": 0,
               "pack_format": [
@@ -146952,3726 +138181,16 @@
               "action_format": [
                 {
                   "action_name": "act_20",
-                  "action_handle": 536870973,
+                  "action_handle": 536871023,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 88,
+                  "next_table_full": 100,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 69,
+                  "vliw_instruction_full": 67,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_25",
-                      "next_table_logical_id": 8,
-                      "next_table_stage_no": 5
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_20",
-          "handle": 536870973,
-          "primitives": [
-            {
-              "name": "DropPrimitive",
-              "dst": { "type": "phv", "name": "eg_intr_md_for_dprsr.drop_ctl" },
-              "src1": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870973,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_act_20",
-      "handle": 1879048218,
-      "name": "cond-21",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 88, "true": 87 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_25", "true": "tbl_act_20" },
-          "logical_table_id": 7,
-          "stage_number": 5,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        { "name": "ig_intr_md.ingress_port", "start_bit": 0, "bit_width": 8 },
-        { "name": "ig_intr_md.ingress_port", "start_bit": 8, "bit_width": 1 },
-        {
-          "name": "fabric_metadata.is_multicast",
-          "start_bit": 17,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(fabric_metadata.is_multicast == 1 && ig_intr_md.ingress_port == eg_intr_md.egress_port)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777268,
-      "name": "tbl_act_25",
-      "table_type": "match",
-      "size": 8388608,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 5,
-            "size": 1,
-            "stage_table_type": "match_with_no_key",
-            "logical_table_id": 8,
-            "has_attached_gateway": true,
-            "memory_resource_allocation": null,
-            "default_next_table": 255,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 0,
-                "entries_per_table_word": 0,
-                "number_memory_units_per_table_word": 0
-              }
-            ],
-            "result_physical_buses": [ 0 ],
-            "action_format": [
-              {
-                "action_name": "act_25",
-                "action_handle": 536870983,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 255,
-                "vliw_instruction": 0,
-                "vliw_instruction_full": 64,
-                "next_tables": [],
-                "immediate_fields": []
-              }
-            ]
-          }
-        ],
-        "match_type": "match_with_no_key"
-      },
-      "actions": [
-        {
-          "name": "act_25",
-          "handle": 536870983,
-          "primitives": [
-            {
-              "name": "CountFromHashPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricEgress.spgw_egress.pdr_counter"
-              },
-              "idx": {
-                "type": "hash",
-                "name": "hash_FabricEgress.spgw_egress.pdr_counter",
-                "algorithm": "identity"
-              },
-              "hash_inputs": [ "fabric_metadata.spgw.ctr_id" ]
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": true,
-          "override_stat_addr_pfe": true,
-          "override_stat_full_addr": 524288,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870983,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [
-        {
-          "how_referenced": "indirect",
-          "handle": 67108877,
-          "name": "FabricEgress.spgw_egress.pdr_counter"
-        }
-      ],
-      "stateful_table_refs": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_act_25",
-      "handle": 1879048219,
-      "name": "tbl_act_25-gateway",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 89, "true": 89 },
-          "memory_resource_allocation": { "memory_unit": 5, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": {
-            "false": "FabricEgress.egress_next.egress_vlan",
-            "true": "FabricEgress.egress_next.egress_vlan"
-          },
-          "logical_table_id": 8,
-          "stage_number": 5,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [],
-      "condition": "true(always hit)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 67108877,
-      "name": "FabricEgress.spgw_egress.pdr_counter",
-      "table_type": "statistics",
-      "size": 1024,
-      "stage_tables": [
-        {
-          "stage_number": 5,
-          "size": 1024,
-          "stage_table_type": "statistics",
-          "logical_table_id": 8,
-          "pack_format": [
-            {
-              "table_word_width": 128,
-              "memory_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 54 ], "vpns": [ 0 ] } ],
-            "spare_bank_memory_unit": 55
-          },
-          "stats_alu_index": 2
-        }
-      ],
-      "how_referenced": "indirect",
-      "enable_pfe": false,
-      "pfe_bit_position": 0,
-      "byte_counter_resolution": 64,
-      "packet_counter_resolution": 64,
-      "statistics_type": "packets_and_bytes"
-    },
-    {
-      "direction": "egress",
-      "handle": 16777269,
-      "name": "FabricEgress.egress_next.egress_vlan",
-      "table_type": "match",
-      "size": 2048,
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 67108878,
-          "name": "FabricEgress.egress_next.egress_vlan_counter"
-        }
-      ],
-      "stateful_table_refs": [],
-      "default_action_handle": 536870977,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [
-        {
-          "name": "vlan_id",
-          "global_name": "fabric_metadata.vlan_id",
-          "start_bit": 0,
-          "bit_width": 12,
-          "bit_width_full": 12,
-          "position": 0,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "fabric_metadata",
-          "field_name": "vlan_id"
-        },
-        {
-          "name": "eg_port",
-          "global_name": "eg_intr_md.egress_port",
-          "start_bit": 0,
-          "bit_width": 9,
-          "bit_width_full": 9,
-          "position": 1,
-          "match_type": "exact",
-          "is_valid": false,
-          "instance_name": "eg_intr_md",
-          "field_name": "egress_port"
-        }
-      ],
-      "ap_bind_indirect_res_to_match": [],
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 5,
-            "size": 4096,
-            "stage_table_type": "hash_match",
-            "logical_table_id": 9,
-            "has_attached_gateway": false,
-            "default_next_table": 255,
-            "hash_functions": [
-              {
-                "hash_bits": [
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 5,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      }
-                    ],
-                    "hash_bit": 8,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 11,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 12,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 15,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 16,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 20,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      }
-                    ],
-                    "hash_bit": 21,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 22,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 23,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 25,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 30,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 10,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 31,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 11,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 34,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 35,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 34
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 36,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 35
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 38
-                      }
-                    ],
-                    "hash_bit": 37,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 38,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "eg_port",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 32
-                      },
-                      {
-                        "field_bit": 1,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 33
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 36
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 37
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "vlan_id",
-                        "hash_match_group": 2,
-                        "hash_match_group_bit": 39
-                      }
-                    ],
-                    "hash_bit": 39,
-                    "seed": 0
-                  }
-                ],
-                "hash_function_number": 2,
-                "ghost_bit_to_hash_bit": [
-                  [ 1, 12, 23, 34 ],
-                  [ 2, 13, 24, 35 ],
-                  [ 3, 14, 25, 36 ],
-                  [ 4, 15, 26, 37 ],
-                  [ 5, 16, 27, 38 ],
-                  [ 0, 11, 22, 33 ],
-                  [ 6, 17, 28, 39 ],
-                  [ 7, 18, 29, 30 ],
-                  [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ]
-                ],
-                "ghost_bit_info": [
-                  { "field_name": "eg_port", "bit_in_match_spec": 0 },
-                  { "field_name": "eg_port", "bit_in_match_spec": 1 },
-                  { "field_name": "eg_port", "bit_in_match_spec": 2 },
-                  { "field_name": "eg_port", "bit_in_match_spec": 3 },
-                  { "field_name": "eg_port", "bit_in_match_spec": 4 },
-                  { "field_name": "eg_port", "bit_in_match_spec": 8 },
-                  { "field_name": "vlan_id", "bit_in_match_spec": 8 },
-                  { "field_name": "vlan_id", "bit_in_match_spec": 9 },
-                  { "field_name": "vlan_id", "bit_in_match_spec": 10 },
-                  { "field_name": "vlan_id", "bit_in_match_spec": 11 }
-                ]
-              }
-            ],
-            "action_format": [
-              {
-                "action_name": "nop",
-                "action_handle": 536870977,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 4294967295,
-                "next_table_full": 90,
-                "vliw_instruction": -1,
-                "vliw_instruction_full": 64,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_egress_next_push_vlan",
-                    "next_table_logical_id": 10,
-                    "next_table_stage_no": 5
-                  }
-                ],
-                "immediate_fields": []
-              },
-              {
-                "action_name": "FabricEgress.egress_next.pop_vlan",
-                "action_handle": 536870976,
-                "table_name": "--END_OF_PIPELINE--",
-                "next_table": 0,
-                "next_table_full": 90,
-                "vliw_instruction": 0,
-                "vliw_instruction_full": 71,
-                "next_tables": [
-                  {
-                    "next_table_name": "tbl_act_21",
-                    "next_table_logical_id": 1,
-                    "next_table_stage_no": 6
-                  }
-                ],
-                "immediate_fields": []
-              }
-            ],
-            "result_physical_buses": [ 14 ],
-            "pack_format": [
-              {
-                "memory_word_width": 128,
-                "table_word_width": 128,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 1
-              }
-            ],
-            "memory_resource_allocation": null,
-            "stash_allocation": {
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 1,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "field_name": "eg_port",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 45,
-                          "start_bit": 5,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 3
-                        },
-                        {
-                          "field_name": "vlan_id",
-                          "source": "spec",
-                          "lsb_mem_word_offset": 32,
-                          "start_bit": 0,
-                          "immediate_name": "",
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "match_mode": "unused",
-                          "enable_pfe": false,
-                          "field_width": 8
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "num_stash_entries": 2,
-              "stash_entries": [
-                [
-                  {
-                    "stash_entry_id": 28,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ],
-                [
-                  {
-                    "stash_entry_id": 29,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
-                    "hash_function_id": 0
-                  }
-                ]
-              ]
-            },
-            "ways": [
-              {
-                "stage_number": 5,
-                "way_number": 0,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "eg_port",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 45,
-                            "start_bit": 5,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 3
-                          },
-                          {
-                            "field_name": "vlan_id",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 5,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 40,
-                            "field_name": "--padding_40_44--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 64,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 0,
-                  "hash_entry_bit_hi": 9,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
-                }
-              },
-              {
-                "stage_number": 5,
-                "way_number": 1,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "eg_port",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 45,
-                            "start_bit": 5,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 3
-                          },
-                          {
-                            "field_name": "vlan_id",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 5,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 40,
-                            "field_name": "--padding_40_44--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 64,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 10,
-                  "hash_entry_bit_hi": 19,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
-                }
-              },
-              {
-                "stage_number": 5,
-                "way_number": 2,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "eg_port",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 45,
-                            "start_bit": 5,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 3
-                          },
-                          {
-                            "field_name": "vlan_id",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 5,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 40,
-                            "field_name": "--padding_40_44--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 64,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 20,
-                  "hash_entry_bit_hi": 29,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
-                }
-              },
-              {
-                "stage_number": 5,
-                "way_number": 3,
-                "stage_table_type": "hash_way",
-                "size": 1024,
-                "pack_format": [
-                  {
-                    "memory_word_width": 128,
-                    "table_word_width": 128,
-                    "entries_per_table_word": 1,
-                    "number_memory_units_per_table_word": 1,
-                    "entries": [
-                      {
-                        "entry_number": 0,
-                        "fields": [
-                          {
-                            "start_bit": 0,
-                            "field_width": 4,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "version",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 112,
-                            "field_name": "version",
-                            "match_mode": "s1q0"
-                          },
-                          {
-                            "field_name": "eg_port",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 45,
-                            "start_bit": 5,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 3
-                          },
-                          {
-                            "field_name": "vlan_id",
-                            "source": "spec",
-                            "lsb_mem_word_offset": 32,
-                            "start_bit": 0,
-                            "immediate_name": "",
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "match_mode": "unused",
-                            "enable_pfe": false,
-                            "field_width": 8
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 32,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 0,
-                            "field_name": "--padding_0_31--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 5,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 40,
-                            "field_name": "--padding_40_44--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 64,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 48,
-                            "field_name": "--padding_48_111--",
-                            "match_mode": "unused"
-                          },
-                          {
-                            "start_bit": 0,
-                            "field_width": 12,
-                            "lsb_mem_word_idx": 0,
-                            "msb_mem_word_idx": 0,
-                            "source": "zero",
-                            "enable_pfe": false,
-                            "lsb_mem_word_offset": 116,
-                            "field_name": "--padding_116_127--",
-                            "match_mode": "unused"
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                ],
-                "memory_resource_allocation": {
-                  "hash_function_id": 0,
-                  "hash_entry_bit_lo": 30,
-                  "hash_entry_bit_hi": 39,
-                  "number_entry_bits": 10,
-                  "hash_select_bit_hi": 40,
-                  "hash_select_bit_lo": 40,
-                  "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 89 ], "vpns": [ 3 ] } ]
-                }
-              }
-            ]
-          }
-        ],
-        "match_type": "exact",
-        "uses_dynamic_key_masks": false
-      },
-      "actions": [
-        {
-          "name": "nop",
-          "handle": 536870977,
-          "primitives": [],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        },
-        {
-          "name": "FabricEgress.egress_next.pop_vlan",
-          "handle": 536870976,
-          "primitives": [
-            {
-              "name": "CountPrimitive",
-              "dst": {
-                "type": "counter",
-                "name": "FabricEgress.egress_next.egress_vlan_counter"
-              }
-            },
-            {
-              "name": "RemoveHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.vlan_tag.$valid" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": false,
-          "disallowed_as_default_action_reason": "has_const_default",
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "handle": 67108878,
-      "name": "FabricEgress.egress_next.egress_vlan_counter",
-      "table_type": "statistics",
-      "size": 4096,
-      "stage_tables": [
-        {
-          "stage_number": 5,
-          "size": 4096,
-          "stage_table_type": "statistics",
-          "logical_table_id": 9,
-          "pack_format": [
-            {
-              "table_word_width": 128,
-              "memory_word_width": 128,
-              "entries_per_table_word": 1,
-              "number_memory_units_per_table_word": 1
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [
-              { "memory_units": [ 78 ], "vpns": [ 0 ] },
-              { "memory_units": [ 79 ], "vpns": [ 1 ] },
-              { "memory_units": [ 80 ], "vpns": [ 2 ] },
-              { "memory_units": [ 81 ], "vpns": [ 3 ] }
-            ],
-            "spare_bank_memory_unit": 82
-          },
-          "stats_alu_index": 3
-        }
-      ],
-      "how_referenced": "direct",
-      "enable_pfe": false,
-      "pfe_bit_position": 0,
-      "byte_counter_resolution": 64,
-      "packet_counter_resolution": 64,
-      "statistics_type": "packets_and_bytes"
-    },
-    {
-      "direction": "egress",
-      "handle": 16777270,
-      "name": "tbl_egress_next_push_vlan",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 5,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 10,
-            "has_attached_gateway": true,
-            "default_next_table": 97,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 6 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 5,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "FabricEgress.egress_next.push_vlan",
-                  "action_handle": 536870978,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 97,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 72,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_21",
-                      "next_table_logical_id": 1,
+                      "next_table_name": "tbl_egress_next_set_mpls",
+                      "next_table_logical_id": 4,
                       "next_table_stage_no": 6
                     }
                   ],
@@ -150690,1971 +138209,16 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "FabricEgress.egress_next.push_vlan",
-          "handle": 536870978,
-          "primitives": [
-            {
-              "name": "AddHeaderPrimitive",
-              "dst": { "type": "header", "name": "hdr.vlan_tag.$valid" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.vlan_tag.cfi" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "phv", "name": "fabric_metadata.vlan_cfi" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.vlan_tag.pri" },
-              "dst_mask": { "type": "immediate", "name": "7" },
-              "src1": { "type": "phv", "name": "fabric_metadata.vlan_pri" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.vlan_tag.eth_type" },
-              "dst_mask": { "type": "immediate", "name": "65535" },
-              "src1": { "type": "immediate", "name": "0x8100" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "hdr.vlan_tag.vlan_id" },
-              "dst_mask": { "type": "immediate", "name": "4095" },
-              "src1": { "type": "phv", "name": "fabric_metadata.vlan_id" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870978,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "egress",
-      "attached_to": "tbl_egress_next_push_vlan",
-      "handle": 1879048220,
-      "name": "cond-24",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 97, "true": 90 },
-          "memory_resource_allocation": { "memory_unit": 4, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "tbl_act_21", "true": "tbl_egress_next_push_vlan" },
-          "logical_table_id": 10,
-          "stage_number": 5,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        { "name": "fabric_metadata.vlan_id", "start_bit": 0, "bit_width": 8 },
-        { "name": "fabric_metadata.vlan_id", "start_bit": 8, "bit_width": 4 }
-      ],
-      "condition": "(fabric_metadata.vlan_id != 4094)",
-      "size": 0
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777242,
-      "name": "tbl_act_14",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 6,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 0,
-            "has_attached_gateway": true,
-            "default_next_table": 112,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 1 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 6,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_14",
-                  "action_handle": 536870941,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 112,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "",
-                      "next_table_logical_id": 0,
-                      "next_table_stage_no": 7
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_14",
-          "handle": 536870941,
-          "primitives": [
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.skip_forwarding" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.skip_next" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "1" }
-            }
-          ],
-          "indirect_resources": [],
-          "allowed_as_default_action": true,
-          "is_compiler_added_action": false,
-          "constant_default_action": false,
-          "disallowed_as_default_action_reason": "",
-          "p4_parameters": [],
-          "override_meter_addr": false,
-          "override_meter_addr_pfe": false,
-          "override_meter_full_addr": 0,
-          "override_stat_addr": false,
-          "override_stat_addr_pfe": false,
-          "override_stat_full_addr": 0,
-          "override_stateful_addr": false,
-          "override_stateful_addr_pfe": false,
-          "override_stateful_full_addr": 0,
-          "is_action_meter_color_aware": false
-        }
-      ],
-      "default_action_handle": 536870941,
-      "action_profile": "",
-      "default_next_table_mask": 0,
-      "default_next_table_default": 0,
-      "is_resource_controllable": true,
-      "uses_range": false,
-      "match_key_fields": [],
-      "ap_bind_indirect_res_to_match": [],
-      "static_entries": []
-    },
-    {
-      "direction": "ingress",
-      "attached_to": "tbl_act_14",
-      "handle": 1879048221,
-      "name": "cond-13",
-      "table_type": "condition",
-      "stage_tables": [
-        {
-          "next_tables": { "false": 112, "true": 96 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
-          "pack_format": [],
-          "next_table_names": { "false": "", "true": "tbl_act_14" },
-          "logical_table_id": 0,
-          "stage_number": 6,
-          "stage_table_type": "gateway",
-          "size": 0
-        }
-      ],
-      "condition_fields": [
-        {
-          "name": "fabric_metadata.spgw.far_dropped",
-          "start_bit": 3,
-          "bit_width": 1
-        }
-      ],
-      "condition": "(fabric_metadata.spgw.far_dropped == 1)",
-      "size": 0
-    },
-    {
-      "direction": "egress",
-      "handle": 16777271,
-      "name": "tbl_act_21",
-      "table_type": "match",
-      "size": 0,
-      "match_attributes": {
-        "stage_tables": [
-          {
-            "stage_number": 6,
-            "size": 0,
-            "stage_table_type": "ternary_match",
-            "logical_table_id": 1,
-            "has_attached_gateway": true,
-            "default_next_table": 117,
-            "pack_format": [
-              {
-                "table_word_width": 0,
-                "memory_word_width": 47,
-                "entries_per_table_word": 1,
-                "number_memory_units_per_table_word": 0,
-                "entries": [
-                  {
-                    "entry_number": 0,
-                    "fields": [
-                      {
-                        "field_name": "--tcam_payload_0--",
-                        "lsb_mem_word_offset": 0,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "payload",
-                        "start_bit": 0,
-                        "field_width": 1
-                      },
-                      {
-                        "field_name": "--tcam_parity_0--",
-                        "lsb_mem_word_offset": 45,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "parity",
-                        "start_bit": 0,
-                        "field_width": 2
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "memory_resource_allocation": null,
-            "result_physical_buses": [ 0 ],
-            "ternary_indirection_stage_table": {
-              "stage_number": 6,
-              "stage_table_type": "ternary_indirection",
-              "size": 0,
-              "pack_format": [
-                {
-                  "memory_word_width": 128,
-                  "table_word_width": 128,
-                  "entries_per_table_word": 32,
-                  "number_memory_units_per_table_word": 1,
-                  "entries": [
-                    {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 125,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 121,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 117,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 113,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 109,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 105,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 101,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 97,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 93,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 89,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 85,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 81,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 77,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 73,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 69,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 64,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 65,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 61,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 57,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 53,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 49,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 45,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 41,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 37,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 33,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 29,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 25,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 21,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 17,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 13,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 9,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 5,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 0,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 0,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 1,
-                          "field_name": "--padding_1_3--"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ],
-              "memory_resource_allocation": null,
-              "action_format": [
-                {
-                  "action_name": "act_22",
-                  "action_handle": 536870979,
-                  "table_name": "--END_OF_PIPELINE--",
-                  "next_table": 0,
-                  "next_table_full": 117,
-                  "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [
-                    {
-                      "next_table_name": "tbl_act_22",
-                      "next_table_logical_id": 5,
-                      "next_table_stage_no": 7
-                    }
-                  ],
-                  "immediate_fields": []
-                }
-              ]
-            }
-          }
-        ],
-        "match_type": "ternary"
-      },
-      "action_data_table_refs": [],
-      "selection_table_refs": [],
-      "meter_table_refs": [],
-      "statistics_table_refs": [],
-      "stateful_table_refs": [],
-      "actions": [
-        {
-          "name": "act_22",
-          "handle": 536870979,
+          "name": "act_20",
+          "handle": 536871023,
           "primitives": [
             {
               "name": "DirectAluPrimitive",
               "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.mpls.ttl" },
+              "dst": { "type": "phv", "name": "hdr.intl4_shim.len_words" },
               "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.mpls.ttl" },
-              "src2": { "type": "immediate", "name": "255" }
+              "src1": { "type": "phv", "name": "hdr.intl4_shim.len_words" },
+              "src2": { "type": "phv", "name": "fabric_metadata.int_meta.new_words" }
             }
           ],
           "indirect_resources": [],
@@ -152675,7 +138239,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870979,
+      "default_action_handle": 536871023,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -152687,30 +138251,30 @@
     },
     {
       "direction": "egress",
-      "attached_to": "tbl_act_21",
-      "handle": 1879048222,
-      "name": "cond-25",
+      "attached_to": "tbl_act_20",
+      "handle": 1879048211,
+      "name": "cond-32",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 98, "true": 97 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 100, "true": 99 },
+          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "tbl_act_23", "true": "tbl_act_21" },
-          "logical_table_id": 1,
+          "next_table_names": { "false": "tbl_egress_next_set_mpls", "true": "tbl_act_20" },
+          "logical_table_id": 3,
           "stage_number": 6,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.mpls.$valid", "start_bit": 0, "bit_width": 1 } ],
-      "condition": "(hdr.mpls.$valid == 1)",
+      "condition_fields": [ { "name": "hdr.intl4_shim.$valid", "start_bit": 2, "bit_width": 1 } ],
+      "condition": "(hdr.intl4_shim.$valid == 1)",
       "size": 0
     },
     {
       "direction": "egress",
-      "handle": 16777272,
-      "name": "tbl_act_23",
+      "handle": 16777254,
+      "name": "tbl_egress_next_set_mpls",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -152719,9 +138283,9 @@
             "stage_number": 6,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 2,
+            "logical_table_id": 4,
             "has_attached_gateway": true,
-            "default_next_table": 116,
+            "default_next_table": 102,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -153574,18 +139138,18 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_24",
-                  "action_handle": 536870981,
+                  "action_name": "FabricEgress.egress_next.set_mpls",
+                  "action_handle": 536870971,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 116,
+                  "next_table_full": 102,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
+                  "vliw_instruction_full": 68,
                   "next_tables": [
                     {
-                      "next_table_name": "tbl_act_24",
-                      "next_table_logical_id": 4,
-                      "next_table_stage_no": 7
+                      "next_table_name": "tbl_act_9",
+                      "next_table_logical_id": 6,
+                      "next_table_stage_no": 6
                     }
                   ],
                   "immediate_fields": []
@@ -153603,16 +139167,47 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_24",
-          "handle": 536870981,
+          "name": "FabricEgress.egress_next.set_mpls",
+          "handle": 536870971,
           "primitives": [
             {
-              "name": "DirectAluPrimitive",
-              "operation": "add",
-              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.mpls.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.mpls.label" },
+              "dst_mask": { "type": "immediate", "name": "1048575" },
+              "src1": { "type": "phv", "name": "fabric_metadata.mpls_label" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.mpls.tc" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "immediate", "name": "0" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.mpls.bos" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "immediate", "name": "1" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.mpls.ttl" },
               "dst_mask": { "type": "immediate", "name": "255" },
-              "src1": { "type": "phv", "name": "hdr.ipv4.ttl" },
-              "src2": { "type": "immediate", "name": "255" }
+              "src1": { "type": "phv", "name": "fabric_metadata.mpls_ttl" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.eth_type.value" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x8847" }
             }
           ],
           "indirect_resources": [],
@@ -153633,7 +139228,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870981,
+      "default_action_handle": 536870971,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -153645,36 +139240,1985 @@
     },
     {
       "direction": "egress",
-      "attached_to": "tbl_act_23",
-      "handle": 1879048223,
-      "name": "cond-27",
+      "attached_to": "tbl_egress_next_set_mpls",
+      "handle": 1879048212,
+      "name": "cond-16",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 255, "true": 98 },
-          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 100, "true": 101 },
+          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "END", "true": "tbl_act_23" },
-          "logical_table_id": 2,
+          "next_table_names": {
+            "false": "tbl_egress_next_set_mpls",
+            "true": "tbl_egress_next_pop_mpls_if_present"
+          },
+          "logical_table_id": 4,
           "stage_number": 6,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.ipv4.$valid", "start_bit": 5, "bit_width": 1 } ],
-      "condition": "(hdr.ipv4.$valid == 1)",
+      "condition_fields": [
+        {
+          "name": "fabric_metadata.mpls_label.0-3",
+          "start_bit": 4,
+          "bit_width": 4
+        },
+        {
+          "name": "fabric_metadata.mpls_label.4-19",
+          "start_bit": 8,
+          "bit_width": 8
+        },
+        {
+          "name": "fabric_metadata.mpls_label.4-19",
+          "start_bit": 16,
+          "bit_width": 8
+        }
+      ],
+      "condition": "(fabric_metadata.mpls_label == 0)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 16777255,
+      "name": "tbl_egress_next_pop_mpls_if_present",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 6,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 5,
+            "has_attached_gateway": true,
+            "default_next_table": 102,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 1 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 6,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "FabricEgress.egress_next.pop_mpls_if_present",
+                  "action_handle": 536870970,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 102,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 70,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_9",
+                      "next_table_logical_id": 6,
+                      "next_table_stage_no": 6
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "FabricEgress.egress_next.pop_mpls_if_present",
+          "handle": 536870970,
+          "primitives": [
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.mpls.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.eth_type.value" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "phv", "name": "fabric_metadata.ip_eth_type" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536870970,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_egress_next_pop_mpls_if_present",
+      "handle": 1879048213,
+      "name": "cond-17",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 102, "true": 101 },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "tbl_act_9",
+            "true": "tbl_egress_next_pop_mpls_if_present"
+          },
+          "logical_table_id": 5,
+          "stage_number": 6,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [ { "name": "hdr.mpls.$valid", "start_bit": 7, "bit_width": 1 } ],
+      "condition": "(hdr.mpls.$valid == 1)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 16777256,
+      "name": "tbl_act_9",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 6,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 6,
+            "has_attached_gateway": true,
+            "default_next_table": 116,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 6 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 6,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "act_9",
+                  "action_handle": 536870969,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 116,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 69,
+                  "next_tables": [
+                    {
+                      "next_table_name": "FabricEgress.egress_next.egress_vlan",
+                      "next_table_logical_id": 4,
+                      "next_table_stage_no": 7
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "act_9",
+          "handle": 536870969,
+          "primitives": [
+            {
+              "name": "DropPrimitive",
+              "dst": { "type": "phv", "name": "eg_intr_md_for_dprsr.drop_ctl" },
+              "src1": { "type": "immediate", "name": "1" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536870969,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_9",
+      "handle": 1879048214,
+      "name": "cond-15",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 116, "true": 102 },
+          "memory_resource_allocation": { "memory_unit": 5, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": {
+            "false": "FabricEgress.egress_next.egress_vlan",
+            "true": "tbl_act_9"
+          },
+          "logical_table_id": 6,
+          "stage_number": 6,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        { "name": "ig_intr_md.ingress_port", "start_bit": 0, "bit_width": 8 },
+        { "name": "ig_intr_md.ingress_port", "start_bit": 8, "bit_width": 1 },
+        {
+          "name": "fabric_metadata.is_multicast",
+          "start_bit": 17,
+          "bit_width": 1
+        }
+      ],
+      "condition": "(fabric_metadata.is_multicast == 1 && ig_intr_md.ingress_port == eg_intr_md.egress_port)",
       "size": 0
     },
     {
       "direction": "ingress",
       "attached_to": "-",
-      "handle": 1879048224,
-      "name": "cond-14",
+      "handle": 1879048215,
+      "name": "cond-8",
       "table_type": "condition",
       "stage_tables": [
         {
           "next_tables": { "false": 144, "true": 113 },
-          "memory_resource_allocation": { "memory_unit": 2, "memory_type": "gateway", "payload_buses": [] },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
             "false": "FabricIngress.acl.acl",
@@ -153689,7 +141233,7 @@
       "condition_fields": [
         {
           "name": "fabric_metadata.skip_forwarding",
-          "start_bit": 0,
+          "start_bit": 1,
           "bit_width": 1
         }
       ],
@@ -153698,7 +141242,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777243,
+      "handle": 16777231,
       "name": "FabricIngress.forwarding.bridging",
       "table_type": "match",
       "size": 2048,
@@ -154658,7 +142202,7 @@
               "action_format": [
                 {
                   "action_name": "nop",
-                  "action_handle": 536870944,
+                  "action_handle": 536870940,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 4294967295,
                   "next_table_full": 144,
@@ -154675,7 +142219,7 @@
                 },
                 {
                   "action_name": "FabricIngress.forwarding.set_next_id_bridging",
-                  "action_handle": 536870943,
+                  "action_handle": 536870939,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 144,
@@ -154699,7 +142243,7 @@
       "action_data_table_refs": [
         {
           "how_referenced": "direct",
-          "handle": 33554438,
+          "handle": 33554440,
           "name": "FabricIngress.forwarding.bridging$action"
         }
       ],
@@ -154716,7 +142260,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870944,
+          "handle": 536870940,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -154737,7 +142281,7 @@
         },
         {
           "name": "FabricIngress.forwarding.set_next_id_bridging",
-          "handle": 536870943,
+          "handle": 536870939,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -154779,7 +142323,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870944,
+      "default_action_handle": 536870940,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -154817,13 +142361,13 @@
     {
       "direction": "ingress",
       "attached_to": "FabricIngress.forwarding.bridging",
-      "handle": 1879048225,
-      "name": "cond-15",
+      "handle": 1879048216,
+      "name": "cond-9",
       "table_type": "condition",
       "stage_tables": [
         {
           "next_tables": { "false": 114, "true": 113 },
-          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
+          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
             "false": "FabricIngress.forwarding.mpls",
@@ -154835,8 +142379,8 @@
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "fabric_metadata.fwd_type", "start_bit": 0, "bit_width": 3 } ],
-      "condition": "(fabric_metadata.fwd_type == 0)",
+      "condition_fields": [ { "name": "fabric_metadata.fwd_type", "start_bit": 1, "bit_width": 3 } ],
+      "condition": "(compiler_generated_meta.^bridged_metadata.^fields_md_fwd_type == 0)",
       "size": 0
     },
     {
@@ -154862,12 +142406,12 @@
           "memory_resource_allocation": {
             "memory_type": "sram",
             "memory_units_and_vpns": [
-              { "memory_units": [ 54 ], "vpns": [ 0 ] },
-              { "memory_units": [ 55 ], "vpns": [ 1 ] }
+              { "memory_units": [ 30 ], "vpns": [ 0 ] },
+              { "memory_units": [ 31 ], "vpns": [ 1 ] }
             ],
-            "spare_bank_memory_unit": 56
+            "spare_bank_memory_unit": 32
           },
-          "stats_alu_index": 2
+          "stats_alu_index": 1
         }
       ],
       "how_referenced": "direct",
@@ -154879,7 +142423,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 33554438,
+      "handle": 33554440,
       "name": "FabricIngress.forwarding.bridging$action",
       "table_type": "action",
       "size": 4096,
@@ -154901,7 +142445,17 @@
                   "fields": [
                     {
                       "start_bit": 0,
-                      "field_width": 32,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 120,
+                      "field_name": "next_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -154916,7 +142470,17 @@
                   "fields": [
                     {
                       "start_bit": 0,
-                      "field_width": 32,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 88,
+                      "field_name": "next_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -154931,7 +142495,17 @@
                   "fields": [
                     {
                       "start_bit": 0,
-                      "field_width": 32,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 56,
+                      "field_name": "next_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -154946,7 +142520,17 @@
                   "fields": [
                     {
                       "start_bit": 0,
-                      "field_width": 32,
+                      "field_width": 8,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "enable_pfe": false,
+                      "lsb_mem_word_offset": 24,
+                      "field_name": "next_id"
+                    },
+                    {
+                      "start_bit": 8,
+                      "field_width": 24,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -154957,7 +142541,7 @@
                   ]
                 }
               ],
-              "action_handle": 536870943
+              "action_handle": 536870939
             },
             {
               "memory_word_width": 128,
@@ -155026,7 +142610,7 @@
                   ]
                 }
               ],
-              "action_handle": 536870944
+              "action_handle": 536870940
             }
           ],
           "memory_resource_allocation": {
@@ -155038,7 +142622,7 @@
       "actions": [
         {
           "name": "FabricIngress.forwarding.set_next_id_bridging",
-          "handle": 536870943,
+          "handle": 536870939,
           "p4_parameters": [
             {
               "name": "next_id",
@@ -155048,14 +142632,14 @@
             }
           ]
         },
-        { "name": "nop", "handle": 536870944, "p4_parameters": [] }
+        { "name": "nop", "handle": 536870940, "p4_parameters": [] }
       ],
       "static_entries": [],
       "how_referenced": "direct"
     },
     {
       "direction": "ingress",
-      "handle": 16777244,
+      "handle": 16777232,
       "name": "FabricIngress.forwarding.mpls",
       "table_type": "match",
       "size": 2048,
@@ -155070,7 +142654,7 @@
         }
       ],
       "stateful_table_refs": [],
-      "default_action_handle": 536870946,
+      "default_action_handle": 536870942,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -155106,52 +142690,10 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 4,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 0,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 16
                       },
                       {
                         "field_bit": 10,
@@ -155172,64 +142714,46 @@
                         "hash_match_group_bit": 24
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
                         "field_bit": 16,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 28
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 17,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 29
                       },
                       {
                         "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
-                    "hash_bit": 2,
+                    "hash_bit": 0,
                     "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 3,
+                        "field_bit": 5,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 12,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 24
                       },
                       {
                         "field_bit": 13,
@@ -155238,12 +142762,114 @@
                         "hash_match_group_bit": 25
                       },
                       {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
                         "field_bit": 15,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 27
                       },
                       {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
                         "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -155256,10 +142882,52 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 4,
+                        "field_bit": 8,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
                       },
                       {
                         "field_bit": 11,
@@ -155274,40 +142942,16 @@
                         "hash_match_group_bit": 24
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 25
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 14,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 26
                       },
                       {
                         "field_bit": 17,
@@ -155316,6 +142960,12 @@
                         "hash_match_group_bit": 29
                       },
                       {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
                         "field_bit": 19,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -155328,18 +142978,6 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -155352,12 +142990,6 @@
                         "hash_match_group_bit": 24
                       },
                       {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -155374,6 +143006,18 @@
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 36
                       }
                     ],
                     "hash_bit": 6,
@@ -155382,12 +143026,6 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 7,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -155400,10 +143038,34 @@
                         "hash_match_group_bit": 24
                       },
                       {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
                         "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 37
                       }
                     ],
                     "hash_bit": 7,
@@ -155412,12 +143074,6 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 8,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -155440,243 +143096,75 @@
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 8,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 11,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
                       },
                       {
                         "field_bit": 19,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 12,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
+                      },
                       {
                         "field_bit": 2,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 38
+                      }
+                    ],
+                    "hash_bit": 8,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
                       },
                       {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 39
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
                         "field_bit": 10,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
                         "field_bit": 17,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 29
                       },
                       {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
                         "field_bit": 3,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 39
                       }
                     ],
-                    "hash_bit": 14,
+                    "hash_bit": 10,
                     "seed": 0
                   },
                   {
@@ -155694,26 +143182,26 @@
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
                       }
                     ],
-                    "hash_bit": 15,
-                    "seed": 0
+                    "hash_bit": 11,
+                    "seed": 1
                   },
                   {
                     "bits_to_xor": [
@@ -155724,10 +143212,10 @@
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 11,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 23
                       },
                       {
                         "field_bit": 12,
@@ -155742,14 +143230,26 @@
                         "hash_match_group_bit": 27
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 16,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
-                    "hash_bit": 16,
-                    "seed": 0
+                    "hash_bit": 12,
+                    "seed": 1
                   },
                   {
                     "bits_to_xor": [
@@ -155772,26 +143272,38 @@
                         "hash_match_group_bit": 23
                       },
                       {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
                         "field_bit": 13,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 25
                       },
                       {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
                         "field_bit": 16,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
                       }
                     ],
-                    "hash_bit": 17,
-                    "seed": 1
+                    "hash_bit": 13,
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
@@ -155802,94 +143314,16 @@
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 12,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 24
                       },
                       {
                         "field_bit": 14,
@@ -155922,8 +143356,44 @@
                         "hash_match_group_bit": 31
                       }
                     ],
-                    "hash_bit": 20,
-                    "seed": 1
+                    "hash_bit": 14,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
@@ -155934,40 +143404,16 @@
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 13,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 25
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 14,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      }
-                    ],
-                    "hash_bit": 21,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 26
                       },
                       {
                         "field_bit": 15,
@@ -155988,16 +143434,310 @@
                         "hash_match_group_bit": 30
                       }
                     ],
-                    "hash_bit": 22,
+                    "hash_bit": 16,
                     "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 36
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
                         "field_bit": 1,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 37
+                      }
+                    ],
+                    "hash_bit": 18,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 38
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 38
+                      }
+                    ],
+                    "hash_bit": 20,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 39
+                      }
+                    ],
+                    "hash_bit": 21,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 16
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 22,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
                       },
                       {
                         "field_bit": 14,
@@ -156012,6 +143752,12 @@
                         "hash_match_group_bit": 28
                       },
                       {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
                         "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -156025,15 +143771,39 @@
                       }
                     ],
                     "hash_bit": 23,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 24,
                     "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 7,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 19
                       },
                       {
                         "field_bit": 10,
@@ -156042,36 +143812,180 @@
                         "hash_match_group_bit": 22
                       },
                       {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      }
+                    ],
+                    "hash_bit": 25,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
                         "field_bit": 17,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
                       }
                     ],
-                    "hash_bit": 24,
+                    "hash_bit": 26,
                     "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 3,
+                        "field_bit": 9,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 21
                       },
                       {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
                         "field_bit": 10,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 36
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
                         "field_bit": 13,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 25
                       },
                       {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
                         "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -156082,9 +143996,117 @@
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 37
                       }
                     ],
-                    "hash_bit": 25,
+                    "hash_bit": 29,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 37
+                      }
+                    ],
+                    "hash_bit": 30,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 38
+                      }
+                    ],
+                    "hash_bit": 31,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 39
+                      }
+                    ],
+                    "hash_bit": 32,
                     "seed": 1
                   },
                   {
@@ -156102,12 +144124,6 @@
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
                         "field_bit": 12,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -156132,8 +144148,8 @@
                         "hash_match_group_bit": 29
                       }
                     ],
-                    "hash_bit": 26,
-                    "seed": 1
+                    "hash_bit": 33,
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
@@ -156144,50 +144160,38 @@
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
                         "field_bit": 13,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 25
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 27
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 30
                       }
                     ],
-                    "hash_bit": 27,
-                    "seed": 1
+                    "hash_bit": 34,
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
@@ -156198,112 +144202,16 @@
                         "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 11,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 30,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 23
                       },
                       {
                         "field_bit": 12,
@@ -156318,120 +144226,6 @@
                         "hash_match_group_bit": 25
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 31,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
                         "field_bit": 14,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -156450,72 +144244,6 @@
                         "hash_match_group_bit": 28
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 34,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
                         "field_bit": 18,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
@@ -156528,10 +144256,16 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 3,
+                        "field_bit": 7,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
                       },
                       {
                         "field_bit": 14,
@@ -156540,64 +144274,10 @@
                         "hash_match_group_bit": 26
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 15,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 36,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 37,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "mpls_label",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 27
                       },
                       {
                         "field_bit": 16,
@@ -156612,16 +144292,16 @@
                         "hash_match_group_bit": 31
                       }
                     ],
-                    "hash_bit": 38,
-                    "seed": 0
+                    "hash_bit": 36,
+                    "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
+                        "field_bit": 8,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 20
                       },
                       {
                         "field_bit": 10,
@@ -156636,34 +144316,148 @@
                         "hash_match_group_bit": 24
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 14,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
                       },
                       {
                         "field_bit": 16,
                         "field_name": "mpls_label",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 28
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 29
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 37,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 31
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 25
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 26
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 27
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 30
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "mpls_label",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 36
                       }
                     ],
                     "hash_bit": 39,
-                    "seed": 1
+                    "seed": 0
                   }
                 ],
                 "hash_function_number": 0,
                 "ghost_bit_to_hash_bit": [
+                  [ 6, 17, 28, 39 ],
+                  [ 7, 18, 29, 30 ],
+                  [ 8, 19, 20, 31 ],
+                  [ 9, 10, 21, 32 ],
                   [ 0, 11, 22, 33 ],
                   [ 1, 12, 23, 34 ],
                   [ 2, 13, 24, 35 ],
                   [ 3, 14, 25, 36 ],
                   [ 4, 15, 26, 37 ],
-                  [ 5, 16, 27, 38 ],
-                  [ 6, 17, 28, 39 ],
-                  [ 7, 18, 29, 30 ],
-                  [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ]
+                  [ 5, 16, 27, 38 ]
                 ],
                 "ghost_bit_info": [
                   { "field_name": "mpls_label", "bit_in_match_spec": 0 },
@@ -156682,7 +144476,7 @@
             "action_format": [
               {
                 "action_name": "nop",
-                "action_handle": 536870946,
+                "action_handle": 536870942,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 4294967295,
                 "next_table_full": 144,
@@ -156699,7 +144493,7 @@
               },
               {
                 "action_name": "FabricIngress.forwarding.pop_mpls_and_next",
-                "action_handle": 536870945,
+                "action_handle": 536870941,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 144,
@@ -156717,13 +144511,20 @@
                     "param_name": "next_id",
                     "param_type": "parameter",
                     "param_shift": 0,
+                    "dest_start": 24,
+                    "dest_width": 8
+                  },
+                  {
+                    "param_name": "next_id",
+                    "param_type": "parameter",
+                    "param_shift": 8,
                     "dest_start": 0,
-                    "dest_width": 32
+                    "dest_width": 24
                   }
                 ]
               }
             ],
-            "result_physical_buses": [ 14, 12 ],
+            "result_physical_buses": [ 13, 10 ],
             "pack_format": [
               {
                 "memory_word_width": 128,
@@ -156799,17 +144600,17 @@
               "stash_entries": [
                 [
                   {
-                    "stash_entry_id": 28,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
+                    "stash_entry_id": 24,
+                    "stash_match_data_select": 1,
+                    "stash_hashbank_select": 1,
                     "hash_function_id": 0
                   }
                 ],
                 [
                   {
-                    "stash_entry_id": 29,
-                    "stash_match_data_select": 0,
-                    "stash_hashbank_select": 0,
+                    "stash_entry_id": 25,
+                    "stash_match_data_select": 1,
+                    "stash_hashbank_select": 1,
                     "hash_function_id": 0
                   }
                 ]
@@ -156934,7 +144735,7 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 75 ], "vpns": [ 0 ] } ]
                 }
               },
               {
@@ -157055,7 +144856,7 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 76 ], "vpns": [ 1 ] } ]
                 }
               },
               {
@@ -157176,7 +144977,7 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 62 ], "vpns": [ 2 ] } ]
                 }
               },
               {
@@ -157297,7 +145098,7 @@
                   "hash_select_bit_hi": 40,
                   "hash_select_bit_lo": 40,
                   "number_select_bits": 0,
-                  "memory_units_and_vpns": [ { "memory_units": [ 74 ], "vpns": [ 3 ] } ]
+                  "memory_units_and_vpns": [ { "memory_units": [ 63 ], "vpns": [ 3 ] } ]
                 }
               }
             ]
@@ -157309,7 +145110,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870946,
+          "handle": 536870942,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -157329,7 +145130,7 @@
         },
         {
           "name": "FabricIngress.forwarding.pop_mpls_and_next",
-          "handle": 536870945,
+          "handle": 536870941,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -157383,13 +145184,13 @@
     {
       "direction": "ingress",
       "attached_to": "FabricIngress.forwarding.mpls",
-      "handle": 1879048226,
-      "name": "cond-16",
+      "handle": 1879048217,
+      "name": "cond-10",
       "table_type": "condition",
       "stage_tables": [
         {
           "next_tables": { "false": 115, "true": 114 },
-          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
+          "memory_resource_allocation": { "memory_unit": 13, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
             "false": "FabricIngress.forwarding.routing_v4",
@@ -157401,8 +145202,8 @@
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "fabric_metadata.fwd_type", "start_bit": 0, "bit_width": 3 } ],
-      "condition": "(fabric_metadata.fwd_type == 1)",
+      "condition_fields": [ { "name": "fabric_metadata.fwd_type", "start_bit": 1, "bit_width": 3 } ],
+      "condition": "(compiler_generated_meta.^bridged_metadata.^fields_md_fwd_type == 1)",
       "size": 0
     },
     {
@@ -157428,14 +145229,14 @@
           "memory_resource_allocation": {
             "memory_type": "sram",
             "memory_units_and_vpns": [
-              { "memory_units": [ 78 ], "vpns": [ 0 ] },
-              { "memory_units": [ 79 ], "vpns": [ 1 ] },
-              { "memory_units": [ 80 ], "vpns": [ 2 ] },
-              { "memory_units": [ 81 ], "vpns": [ 3 ] }
+              { "memory_units": [ 54 ], "vpns": [ 0 ] },
+              { "memory_units": [ 55 ], "vpns": [ 1 ] },
+              { "memory_units": [ 56 ], "vpns": [ 2 ] },
+              { "memory_units": [ 57 ], "vpns": [ 3 ] }
             ],
-            "spare_bank_memory_unit": 82
+            "spare_bank_memory_unit": 58
           },
-          "stats_alu_index": 3
+          "stats_alu_index": 2
         }
       ],
       "how_referenced": "direct",
@@ -157447,7 +145248,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777245,
+      "handle": 16777233,
       "name": "FabricIngress.forwarding.routing_v4",
       "table_type": "match",
       "size": 30000,
@@ -157455,7 +145256,7 @@
         "match_type": "algorithmic_lpm",
         "pre_classifier": {
           "direction": "ingress",
-          "handle": 16777275,
+          "handle": 16777262,
           "name": "FabricIngress.forwarding.routing_v4_pre_classifier",
           "table_type": "match",
           "size": 30000,
@@ -158370,12 +146171,12 @@
                   "action_format": [
                     {
                       "action_name": "forwarding_routing_v4__alpm_preclassifier__set_partition_index",
-                      "action_handle": 536870947,
+                      "action_handle": 536870943,
                       "table_name": "--END_OF_PIPELINE--",
                       "next_table": 0,
                       "next_table_full": 128,
                       "vliw_instruction": 1,
-                      "vliw_instruction_full": 67,
+                      "vliw_instruction_full": 68,
                       "next_tables": [
                         {
                           "next_table_name": "FabricIngress.forwarding.routing_v4",
@@ -158394,7 +146195,7 @@
           "action_data_table_refs": [
             {
               "how_referenced": "direct",
-              "handle": 33554439,
+              "handle": 33554441,
               "name": "FabricIngress.forwarding.routing_v4_preclassifier$action"
             }
           ],
@@ -158405,7 +146206,7 @@
           "actions": [
             {
               "name": "forwarding_routing_v4__alpm_preclassifier__set_partition_index",
-              "handle": 536870947,
+              "handle": 536870943,
               "primitives": [
                 {
                   "name": "ModifyFieldPrimitive",
@@ -158443,7 +146244,7 @@
               "is_action_meter_color_aware": false
             }
           ],
-          "default_action_handle": 536870947,
+          "default_action_handle": 536870943,
           "action_profile": "",
           "default_next_table_mask": 0,
           "default_next_table_default": 0,
@@ -158470,15 +146271,15 @@
         "partition_field_name": "partition_index",
         "lpm_field_name": "ipv4_dst",
         "bins_per_partition": 30,
-        "set_partition_action_handle": 536870947,
+        "set_partition_action_handle": 536870943,
         "stage_tables": [],
         "atcam_table": {
           "direction": "ingress",
-          "handle": 16777276,
+          "handle": 16777263,
           "name": "FabricIngress.forwarding.routing_v4",
           "table_type": "match",
           "size": 30000,
-          "default_action_handle": 536870950,
+          "default_action_handle": 536870946,
           "action_profile": "",
           "default_next_table_mask": 0,
           "default_next_table_default": 0,
@@ -158504,11 +146305,11 @@
             "units": [
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt0",
                 "size": 5120,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -158541,7 +146342,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -158558,7 +146359,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -158576,14 +146377,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -158774,7 +146582,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -158794,7 +146602,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -158821,7 +146629,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -158849,11 +146657,11 @@
               },
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt1",
                 "size": 5120,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -158886,7 +146694,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -158903,7 +146711,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -158921,14 +146729,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -159119,7 +146934,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159139,7 +146954,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159166,7 +146981,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159194,11 +147009,11 @@
               },
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt2",
                 "size": 5120,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -159231,7 +147046,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -159248,7 +147063,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -159266,14 +147081,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -159464,7 +147286,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159484,7 +147306,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159511,7 +147333,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159539,11 +147361,11 @@
               },
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt3",
                 "size": 4096,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -159576,7 +147398,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -159593,7 +147415,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -159611,14 +147433,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -159805,7 +147634,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159825,7 +147654,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159852,7 +147681,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -159880,11 +147709,11 @@
               },
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt4",
                 "size": 4096,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -159917,7 +147746,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -159934,7 +147763,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -159952,14 +147781,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -160146,7 +147982,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160166,7 +148002,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160193,7 +148029,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160221,11 +148057,11 @@
               },
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt5",
                 "size": 4096,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -160258,7 +148094,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -160275,7 +148111,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -160293,14 +148129,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -160487,7 +148330,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160507,7 +148350,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160534,7 +148377,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160562,11 +148405,11 @@
               },
               {
                 "direction": "ingress",
-                "handle": 16777276,
+                "handle": 16777263,
                 "name": "forwarding_routing_v4$atcam$lt6",
                 "size": 4096,
                 "table_type": "match",
-                "default_action_handle": 536870950,
+                "default_action_handle": 536870946,
                 "action_profile": "",
                 "default_next_table_mask": 0,
                 "default_next_table_default": 0,
@@ -160599,7 +148442,7 @@
                       "action_format": [
                         {
                           "action_name": "nop",
-                          "action_handle": 536870950,
+                          "action_handle": 536870946,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 4294967295,
                           "next_table_full": 144,
@@ -160616,7 +148459,7 @@
                         },
                         {
                           "action_name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                          "action_handle": 536870948,
+                          "action_handle": 536870944,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -160634,14 +148477,21 @@
                               "param_name": "next_id",
                               "param_type": "parameter",
                               "param_shift": 0,
+                              "dest_start": 24,
+                              "dest_width": 8
+                            },
+                            {
+                              "param_name": "next_id",
+                              "param_type": "parameter",
+                              "param_shift": 8,
                               "dest_start": 0,
-                              "dest_width": 32
+                              "dest_width": 24
                             }
                           ]
                         },
                         {
                           "action_name": "FabricIngress.forwarding.nop_routing_v4",
-                          "action_handle": 536870949,
+                          "action_handle": 536870945,
                           "table_name": "--END_OF_PIPELINE--",
                           "next_table": 0,
                           "next_table_full": 144,
@@ -160828,7 +148678,7 @@
                 "actions": [
                   {
                     "name": "nop",
-                    "handle": 536870950,
+                    "handle": 536870946,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160848,7 +148698,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-                    "handle": 536870948,
+                    "handle": 536870944,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160875,7 +148725,7 @@
                   },
                   {
                     "name": "FabricIngress.forwarding.nop_routing_v4",
-                    "handle": 536870949,
+                    "handle": 536870945,
                     "primitives": [],
                     "indirect_resources": [],
                     "allowed_as_default_action": true,
@@ -160909,7 +148759,7 @@
           "actions": [
             {
               "name": "nop",
-              "handle": 536870950,
+              "handle": 536870946,
               "primitives": [],
               "indirect_resources": [],
               "allowed_as_default_action": true,
@@ -160929,7 +148779,7 @@
             },
             {
               "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-              "handle": 536870948,
+              "handle": 536870944,
               "primitives": [],
               "indirect_resources": [],
               "allowed_as_default_action": true,
@@ -160956,7 +148806,7 @@
             },
             {
               "name": "FabricIngress.forwarding.nop_routing_v4",
-              "handle": 536870949,
+              "handle": 536870945,
               "primitives": [],
               "indirect_resources": [],
               "allowed_as_default_action": true,
@@ -160982,7 +148832,7 @@
           "stateful_table_refs": []
         }
       },
-      "default_action_handle": 536870950,
+      "default_action_handle": 536870946,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -161006,7 +148856,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870950,
+          "handle": 536870946,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -161026,7 +148876,7 @@
         },
         {
           "name": "FabricIngress.forwarding.set_next_id_routing_v4",
-          "handle": 536870948,
+          "handle": 536870944,
           "primitives": [
             {
               "name": "ModifyFieldPrimitive",
@@ -161103,7 +148953,7 @@
         },
         {
           "name": "FabricIngress.forwarding.nop_routing_v4",
-          "handle": 536870949,
+          "handle": 536870945,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -161131,13 +148981,13 @@
     {
       "direction": "ingress",
       "attached_to": "FabricIngress.forwarding.routing_v4",
-      "handle": 1879048227,
-      "name": "cond-17",
+      "handle": 1879048218,
+      "name": "cond-11",
       "table_type": "condition",
       "stage_tables": [
         {
           "next_tables": { "false": 144, "true": 115 },
-          "memory_resource_allocation": { "memory_unit": 14, "memory_type": "gateway", "payload_buses": [] },
+          "memory_resource_allocation": { "memory_unit": 12, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
           "next_table_names": {
             "false": "FabricIngress.acl.acl",
@@ -161149,80 +148999,45 @@
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "fabric_metadata.fwd_type", "start_bit": 0, "bit_width": 3 } ],
-      "condition": "(fabric_metadata.fwd_type == 2)",
+      "condition_fields": [ { "name": "fabric_metadata.fwd_type", "start_bit": 1, "bit_width": 3 } ],
+      "condition": "(compiler_generated_meta.^bridged_metadata.^fields_md_fwd_type == 2)",
       "size": 0
     },
     {
       "direction": "ingress",
-      "handle": 33554439,
+      "handle": 33554441,
       "name": "FabricIngress.forwarding.routing_v4_preclassifier$action",
       "table_type": "action",
-      "size": 8192,
+      "size": 4096,
       "stage_tables": [
         {
           "stage_number": 7,
-          "size": 8192,
+          "size": 4096,
           "stage_table_type": "action_data",
           "logical_table_id": 3,
           "pack_format": [
             {
               "memory_word_width": 128,
               "table_word_width": 128,
-              "entries_per_table_word": 8,
+              "entries_per_table_word": 4,
               "number_memory_units_per_table_word": 1,
               "entries": [
                 {
-                  "entry_number": 7,
+                  "entry_number": 3,
                   "fields": [
                     {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 112,
-                      "field_name": "partition_index"
-                    },
-                    {
                       "start_bit": 0,
                       "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 120,
-                      "field_name": "partition_index"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 6,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 114,
-                      "field_name": "--padding_2_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 6,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
                       "lsb_mem_word_offset": 96,
                       "field_name": "partition_index"
                     },
                     {
-                      "start_bit": 0,
-                      "field_width": 8,
+                      "start_bit": 8,
+                      "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -161232,67 +149047,32 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 6,
+                      "field_width": 22,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 98,
-                      "field_name": "--padding_2_7--"
+                      "lsb_mem_word_offset": 106,
+                      "field_name": "--padding_10_31--"
                     }
                   ]
                 },
                 {
-                  "entry_number": 5,
+                  "entry_number": 2,
                   "fields": [
                     {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "partition_index"
-                    },
-                    {
                       "start_bit": 0,
                       "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 88,
-                      "field_name": "partition_index"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 6,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 82,
-                      "field_name": "--padding_2_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 4,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
                       "lsb_mem_word_offset": 64,
                       "field_name": "partition_index"
                     },
                     {
-                      "start_bit": 0,
-                      "field_width": 8,
+                      "start_bit": 8,
+                      "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -161302,67 +149082,32 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 6,
+                      "field_width": 22,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 66,
-                      "field_name": "--padding_2_7--"
+                      "lsb_mem_word_offset": 74,
+                      "field_name": "--padding_10_31--"
                     }
                   ]
                 },
                 {
-                  "entry_number": 3,
+                  "entry_number": 1,
                   "fields": [
                     {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 48,
-                      "field_name": "partition_index"
-                    },
-                    {
                       "start_bit": 0,
                       "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 56,
-                      "field_name": "partition_index"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 6,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 50,
-                      "field_name": "--padding_2_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 2,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
                       "lsb_mem_word_offset": 32,
                       "field_name": "partition_index"
                     },
                     {
-                      "start_bit": 0,
-                      "field_width": 8,
+                      "start_bit": 8,
+                      "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -161372,48 +149117,13 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 6,
+                      "field_width": 22,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 34,
-                      "field_name": "--padding_2_7--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 8,
-                      "field_width": 2,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "partition_index"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 8,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 24,
-                      "field_name": "partition_index"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 6,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 18,
-                      "field_name": "--padding_2_7--"
+                      "lsb_mem_word_offset": 42,
+                      "field_name": "--padding_10_31--"
                     }
                   ]
                 },
@@ -161421,8 +149131,8 @@
                   "entry_number": 0,
                   "fields": [
                     {
-                      "start_bit": 8,
-                      "field_width": 2,
+                      "start_bit": 0,
+                      "field_width": 8,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -161431,8 +149141,8 @@
                       "field_name": "partition_index"
                     },
                     {
-                      "start_bit": 0,
-                      "field_width": 8,
+                      "start_bit": 8,
+                      "field_width": 2,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "spec",
@@ -161442,18 +149152,18 @@
                     },
                     {
                       "start_bit": 0,
-                      "field_width": 6,
+                      "field_width": 22,
                       "lsb_mem_word_idx": 0,
                       "msb_mem_word_idx": 0,
                       "source": "zero",
                       "enable_pfe": false,
-                      "lsb_mem_word_offset": 2,
-                      "field_name": "--padding_2_7--"
+                      "lsb_mem_word_offset": 10,
+                      "field_name": "--padding_10_31--"
                     }
                   ]
                 }
               ],
-              "action_handle": 536870947
+              "action_handle": 536870943
             }
           ],
           "memory_resource_allocation": {
@@ -161465,7 +149175,7 @@
       "actions": [
         {
           "name": "forwarding_routing_v4__alpm_preclassifier__set_partition_index",
-          "handle": 536870947,
+          "handle": 536870943,
           "p4_parameters": [
             {
               "name": "partition_index",
@@ -161481,8 +149191,2749 @@
     },
     {
       "direction": "egress",
-      "handle": 16777273,
-      "name": "tbl_act_24",
+      "handle": 16777257,
+      "name": "FabricEgress.egress_next.egress_vlan",
+      "table_type": "match",
+      "size": 2048,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108878,
+          "name": "FabricEgress.egress_next.egress_vlan_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870974,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "vlan_id",
+          "global_name": "fabric_metadata.vlan_id",
+          "start_bit": 0,
+          "bit_width": 12,
+          "bit_width_full": 12,
+          "position": 0,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "vlan_id"
+        },
+        {
+          "name": "eg_port",
+          "global_name": "eg_intr_md.egress_port",
+          "start_bit": 0,
+          "bit_width": 9,
+          "bit_width_full": 9,
+          "position": 1,
+          "match_type": "exact",
+          "is_valid": false,
+          "instance_name": "eg_intr_md",
+          "field_name": "egress_port"
+        }
+      ],
+      "ap_bind_indirect_res_to_match": [],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 7,
+            "size": 4096,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 4,
+            "has_attached_gateway": false,
+            "default_next_table": 255,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 0,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      }
+                    ],
+                    "hash_bit": 5,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      }
+                    ],
+                    "hash_bit": 6,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 89
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 90
+                      }
+                    ],
+                    "hash_bit": 8,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 91
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 91
+                      }
+                    ],
+                    "hash_bit": 10,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 11,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      }
+                    ],
+                    "hash_bit": 12,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 13,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      }
+                    ],
+                    "hash_bit": 14,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 16,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 89
+                      }
+                    ],
+                    "hash_bit": 18,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 90
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 90
+                      }
+                    ],
+                    "hash_bit": 20,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 91
+                      }
+                    ],
+                    "hash_bit": 21,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      }
+                    ],
+                    "hash_bit": 22,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 23,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 25,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 26,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 89
+                      }
+                    ],
+                    "hash_bit": 29,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 89
+                      }
+                    ],
+                    "hash_bit": 30,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 90
+                      }
+                    ],
+                    "hash_bit": 31,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 91
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 34,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      }
+                    ],
+                    "hash_bit": 35,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 36,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      }
+                    ],
+                    "hash_bit": 37,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "eg_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 80
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "vlan_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      }
+                    ],
+                    "hash_bit": 39,
+                    "seed": 1
+                  }
+                ],
+                "hash_function_number": 1,
+                "ghost_bit_to_hash_bit": [
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ],
+                  [ 2, 13, 24, 35 ],
+                  [ 3, 14, 25, 36 ],
+                  [ 4, 15, 26, 37 ],
+                  [ 5, 16, 27, 38 ],
+                  [ 6, 17, 28, 39 ],
+                  [ 7, 18, 29, 30 ],
+                  [ 8, 19, 20, 31 ],
+                  [ 9, 10, 21, 32 ]
+                ],
+                "ghost_bit_info": [
+                  { "field_name": "eg_port", "bit_in_match_spec": 0 },
+                  { "field_name": "eg_port", "bit_in_match_spec": 1 },
+                  { "field_name": "eg_port", "bit_in_match_spec": 2 },
+                  { "field_name": "eg_port", "bit_in_match_spec": 3 },
+                  { "field_name": "eg_port", "bit_in_match_spec": 4 },
+                  { "field_name": "eg_port", "bit_in_match_spec": 8 },
+                  { "field_name": "vlan_id", "bit_in_match_spec": 8 },
+                  { "field_name": "vlan_id", "bit_in_match_spec": 9 },
+                  { "field_name": "vlan_id", "bit_in_match_spec": 10 },
+                  { "field_name": "vlan_id", "bit_in_match_spec": 11 }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "FabricEgress.egress_next.drop",
+                "action_handle": 536870974,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 4294967295,
+                "next_table_full": 117,
+                "vliw_instruction": -1,
+                "vliw_instruction_full": 68,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_10",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 7
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.egress_next.push_vlan",
+                "action_handle": 536870972,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 117,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_10",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 7
+                  }
+                ],
+                "immediate_fields": []
+              },
+              {
+                "action_name": "FabricEgress.egress_next.pop_vlan",
+                "action_handle": 536870973,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 117,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 66,
+                "next_tables": [
+                  {
+                    "next_table_name": "tbl_act_10",
+                    "next_table_logical_id": 5,
+                    "next_table_stage_no": 7
+                  }
+                ],
+                "immediate_fields": []
+              }
+            ],
+            "result_physical_buses": [ 14, 12 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "stash_allocation": {
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 1,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "field_name": "eg_port",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 45,
+                          "start_bit": 5,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 3
+                        },
+                        {
+                          "field_name": "vlan_id",
+                          "source": "spec",
+                          "lsb_mem_word_offset": 32,
+                          "start_bit": 0,
+                          "immediate_name": "",
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "match_mode": "unused",
+                          "enable_pfe": false,
+                          "field_width": 8
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action",
+                          "match_mode": "unused"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "num_stash_entries": 2,
+              "stash_entries": [
+                [
+                  {
+                    "stash_entry_id": 28,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ],
+                [
+                  {
+                    "stash_entry_id": 29,
+                    "stash_match_data_select": 0,
+                    "stash_hashbank_select": 0,
+                    "hash_function_id": 0
+                  }
+                ]
+              ]
+            },
+            "ways": [
+              {
+                "stage_number": 7,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "eg_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 45,
+                            "start_bit": 5,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 3
+                          },
+                          {
+                            "field_name": "vlan_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 5,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_44--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 7,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "eg_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 45,
+                            "start_bit": 5,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 3
+                          },
+                          {
+                            "field_name": "vlan_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 5,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_44--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 7,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "eg_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 45,
+                            "start_bit": 5,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 3
+                          },
+                          {
+                            "field_name": "vlan_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 5,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_44--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              },
+              {
+                "stage_number": 7,
+                "way_number": 3,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "eg_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 45,
+                            "start_bit": 5,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 3
+                          },
+                          {
+                            "field_name": "vlan_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 31,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "--padding_1_31--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 5,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_44--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "enable_pfe": false,
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 30,
+                  "hash_entry_bit_hi": 39,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 74 ], "vpns": [ 3 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "FabricEgress.egress_next.drop",
+          "handle": 536870974,
+          "primitives": [],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.egress_next.push_vlan",
+          "handle": 536870972,
+          "primitives": [
+            {
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricEgress.egress_next.egress_vlan_counter"
+              }
+            },
+            {
+              "name": "AddHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.vlan_tag.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.vlan_tag.cfi" },
+              "dst_mask": { "type": "immediate", "name": "1" },
+              "src1": { "type": "phv", "name": "fabric_metadata.vlan_cfi" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.vlan_tag.pri" },
+              "dst_mask": { "type": "immediate", "name": "7" },
+              "src1": { "type": "phv", "name": "fabric_metadata.vlan_pri" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.vlan_tag.eth_type" },
+              "dst_mask": { "type": "immediate", "name": "65535" },
+              "src1": { "type": "immediate", "name": "0x8100" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.vlan_tag.vlan_id" },
+              "dst_mask": { "type": "immediate", "name": "4095" },
+              "src1": { "type": "phv", "name": "fabric_metadata.vlan_id" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.packet_in._pad" },
+              "dst_mask": { "type": "immediate", "name": "127" },
+              "src1": { "type": "immediate", "name": "0" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        },
+        {
+          "name": "FabricEgress.egress_next.pop_vlan",
+          "handle": 536870973,
+          "primitives": [
+            {
+              "name": "CountPrimitive",
+              "dst": {
+                "type": "counter",
+                "name": "FabricEgress.egress_next.egress_vlan_counter"
+              }
+            },
+            {
+              "name": "RemoveHeaderPrimitive",
+              "dst": { "type": "header", "name": "hdr.vlan_tag.$valid" }
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "operation": "set",
+              "dst": { "type": "phv", "name": "hdr.packet_in._pad" },
+              "dst_mask": { "type": "immediate", "name": "127" },
+              "src1": { "type": "immediate", "name": "0" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": false,
+          "disallowed_as_default_action_reason": "has_const_default",
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "handle": 67108878,
+      "name": "FabricEgress.egress_next.egress_vlan_counter",
+      "table_type": "statistics",
+      "size": 4096,
+      "stage_tables": [
+        {
+          "stage_number": 7,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 4,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] },
+              { "memory_units": [ 80 ], "vpns": [ 2 ] },
+              { "memory_units": [ 81 ], "vpns": [ 3 ] }
+            ],
+            "spare_bank_memory_unit": 82
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 64,
+      "packet_counter_resolution": 64,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "egress",
+      "handle": 16777258,
+      "name": "tbl_act_10",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -161491,9 +151942,9 @@
             "stage_number": 7,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 4,
+            "logical_table_id": 5,
             "has_attached_gateway": true,
-            "default_next_table": 255,
+            "default_next_table": 135,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -162346,14 +152797,20 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_23",
-                  "action_handle": 536870982,
+                  "action_name": "act_11",
+                  "action_handle": 536870975,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
-                  "next_table_full": 255,
+                  "next_table_full": 135,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 65,
-                  "next_tables": [],
+                  "vliw_instruction_full": 67,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_11",
+                      "next_table_logical_id": 7,
+                      "next_table_stage_no": 8
+                    }
+                  ],
                   "immediate_fields": []
                 }
               ]
@@ -162369,13 +152826,16 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_23",
-          "handle": 536870982,
+          "name": "act_11",
+          "handle": 536870975,
           "primitives": [
             {
-              "name": "DropPrimitive",
-              "dst": { "type": "phv", "name": "eg_intr_md_for_dprsr.drop_ctl" },
-              "src1": { "type": "immediate", "name": "1" }
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.mpls.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.mpls.ttl" },
+              "src2": { "type": "immediate", "name": "255" }
             }
           ],
           "indirect_resources": [],
@@ -162396,7 +152856,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870982,
+      "default_action_handle": 536870975,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -162408,30 +152868,30 @@
     },
     {
       "direction": "egress",
-      "attached_to": "tbl_act_24",
-      "handle": 1879048228,
-      "name": "cond-28",
+      "attached_to": "tbl_act_10",
+      "handle": 1879048219,
+      "name": "cond-18",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 255, "true": 116 },
-          "memory_resource_allocation": { "memory_unit": 12, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 118, "true": 117 },
+          "memory_resource_allocation": { "memory_unit": 10, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "END", "true": "tbl_act_24" },
-          "logical_table_id": 4,
+          "next_table_names": { "false": "tbl_act_12", "true": "tbl_act_10" },
+          "logical_table_id": 5,
           "stage_number": 7,
           "stage_table_type": "gateway",
           "size": 0
         }
       ],
-      "condition_fields": [ { "name": "hdr.ipv4.ttl", "start_bit": 0, "bit_width": 8 } ],
-      "condition": "(hdr.ipv4.ttl == 0)",
+      "condition_fields": [ { "name": "hdr.mpls.$valid", "start_bit": 7, "bit_width": 1 } ],
+      "condition": "(hdr.mpls.$valid == 1)",
       "size": 0
     },
     {
       "direction": "egress",
-      "handle": 16777274,
-      "name": "tbl_act_22",
+      "handle": 16777259,
+      "name": "tbl_act_12",
       "table_type": "match",
       "size": 0,
       "match_attributes": {
@@ -162440,9 +152900,9 @@
             "stage_number": 7,
             "size": 0,
             "stage_table_type": "ternary_match",
-            "logical_table_id": 5,
+            "logical_table_id": 6,
             "has_attached_gateway": true,
-            "default_next_table": 255,
+            "default_next_table": 136,
             "pack_format": [
               {
                 "table_word_width": 0,
@@ -163295,13 +153755,974 @@
               "memory_resource_allocation": null,
               "action_format": [
                 {
-                  "action_name": "act_21",
-                  "action_handle": 536870980,
+                  "action_name": "act_13",
+                  "action_handle": 536870977,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 136,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 69,
+                  "next_tables": [
+                    {
+                      "next_table_name": "tbl_act_13",
+                      "next_table_logical_id": 8,
+                      "next_table_stage_no": 8
+                    }
+                  ],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "act_13",
+          "handle": 536870977,
+          "primitives": [
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dst": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "dst_mask": { "type": "immediate", "name": "255" },
+              "src1": { "type": "phv", "name": "hdr.ipv4.ttl" },
+              "src2": { "type": "immediate", "name": "255" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536870977,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_12",
+      "handle": 1879048220,
+      "name": "cond-20",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 255, "true": 118 },
+          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "END", "true": "tbl_act_12" },
+          "logical_table_id": 6,
+          "stage_number": 7,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [
+        { "name": "fabric_metadata.fwd_type", "start_bit": 1, "bit_width": 3 },
+        { "name": "hdr.ipv4.$valid", "start_bit": 8, "bit_width": 1 }
+      ],
+      "condition": "(hdr.ipv4.$valid == 1 && fabric_metadata.fwd_type != 0)",
+      "size": 0
+    },
+    {
+      "direction": "egress",
+      "handle": 16777261,
+      "name": "tbl_act_11",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 8,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 7,
+            "has_attached_gateway": true,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 0 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 8,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "act_10",
+                  "action_handle": 536870976,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 255,
                   "vliw_instruction": 1,
-                  "vliw_instruction_full": 66,
+                  "vliw_instruction_full": 65,
                   "next_tables": [],
                   "immediate_fields": []
                 }
@@ -163318,8 +154739,8 @@
       "stateful_table_refs": [],
       "actions": [
         {
-          "name": "act_21",
-          "handle": 536870980,
+          "name": "act_10",
+          "handle": 536870976,
           "primitives": [
             {
               "name": "DropPrimitive",
@@ -163345,7 +154766,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870980,
+      "default_action_handle": 536870976,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -163357,18 +154778,18 @@
     },
     {
       "direction": "egress",
-      "attached_to": "tbl_act_22",
-      "handle": 1879048229,
-      "name": "cond-26",
+      "attached_to": "tbl_act_11",
+      "handle": 1879048221,
+      "name": "cond-19",
       "table_type": "condition",
       "stage_tables": [
         {
-          "next_tables": { "false": 255, "true": 117 },
-          "memory_resource_allocation": { "memory_unit": 3, "memory_type": "gateway", "payload_buses": [] },
+          "next_tables": { "false": 255, "true": 135 },
+          "memory_resource_allocation": { "memory_unit": 0, "memory_type": "gateway", "payload_buses": [] },
           "pack_format": [],
-          "next_table_names": { "false": "END", "true": "tbl_act_22" },
-          "logical_table_id": 5,
-          "stage_number": 7,
+          "next_table_names": { "false": "END", "true": "tbl_act_11" },
+          "logical_table_id": 7,
+          "stage_number": 8,
           "stage_table_type": "gateway",
           "size": 0
         }
@@ -163378,8 +154799,957 @@
       "size": 0
     },
     {
+      "direction": "egress",
+      "handle": 16777260,
+      "name": "tbl_act_13",
+      "table_type": "match",
+      "size": 0,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 8,
+            "size": 0,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 8,
+            "has_attached_gateway": true,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": null,
+            "result_physical_buses": [ 1 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 8,
+              "stage_table_type": "ternary_indirection",
+              "size": 0,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 32,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 31,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 124,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 125,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 30,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 120,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 121,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 29,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 116,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 117,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 28,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 112,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 113,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 27,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 108,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 109,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 26,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 104,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 105,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 25,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 100,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 101,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 24,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 97,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 23,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 92,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 93,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 22,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 88,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 89,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 21,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 84,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 85,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 20,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 80,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 81,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 19,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 76,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 77,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 18,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 72,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 73,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 17,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 68,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 69,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 16,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 65,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 15,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 60,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 61,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 14,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 56,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 57,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 13,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 52,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 53,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 12,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 48,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 49,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 11,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 44,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 45,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 10,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 40,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 41,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 9,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 36,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 37,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 8,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 33,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 7,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 28,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 29,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 6,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 24,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 25,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 5,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 20,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 21,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 4,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 16,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 17,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 12,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 13,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 8,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 9,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 4,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 5,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "field_width": 1,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 1,
+                          "field_name": "--padding_1_3--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": null,
+              "action_format": [
+                {
+                  "action_name": "act_12",
+                  "action_handle": 536870978,
+                  "table_name": "--END_OF_PIPELINE--",
+                  "next_table": 0,
+                  "next_table_full": 255,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 66,
+                  "next_tables": [],
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "act_12",
+          "handle": 536870978,
+          "primitives": [
+            {
+              "name": "DropPrimitive",
+              "dst": { "type": "phv", "name": "eg_intr_md_for_dprsr.drop_ctl" },
+              "src1": { "type": "immediate", "name": "1" }
+            }
+          ],
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "is_compiler_added_action": false,
+          "constant_default_action": false,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false
+        }
+      ],
+      "default_action_handle": 536870978,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "default_next_table_default": 0,
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "ap_bind_indirect_res_to_match": [],
+      "static_entries": []
+    },
+    {
+      "direction": "egress",
+      "attached_to": "tbl_act_13",
+      "handle": 1879048222,
+      "name": "cond-21",
+      "table_type": "condition",
+      "stage_tables": [
+        {
+          "next_tables": { "false": 255, "true": 136 },
+          "memory_resource_allocation": { "memory_unit": 1, "memory_type": "gateway", "payload_buses": [] },
+          "pack_format": [],
+          "next_table_names": { "false": "END", "true": "tbl_act_13" },
+          "logical_table_id": 8,
+          "stage_number": 8,
+          "stage_table_type": "gateway",
+          "size": 0
+        }
+      ],
+      "condition_fields": [ { "name": "hdr.ipv4.ttl", "start_bit": 0, "bit_width": 8 } ],
+      "condition": "(hdr.ipv4.ttl == 0)",
+      "size": 0
+    },
+    {
       "direction": "ingress",
-      "handle": 16777246,
+      "handle": 16777234,
       "name": "FabricIngress.acl.acl",
       "table_type": "match",
       "size": 2048,
@@ -163520,17 +155890,17 @@
                         "field_width": 2
                       },
                       {
-                        "field_name": "ipv4_src",
+                        "field_name": "ipv4_dst",
                         "lsb_mem_word_offset": 1,
                         "lsb_mem_word_idx": 5,
                         "msb_mem_word_idx": 5,
                         "source": "spec",
                         "start_bit": 0,
-                        "field_width": 32
+                        "field_width": 16
                       },
                       {
-                        "field_name": "ig_port",
-                        "lsb_mem_word_offset": 33,
+                        "field_name": "icmp_code",
+                        "lsb_mem_word_offset": 17,
                         "lsb_mem_word_idx": 5,
                         "msb_mem_word_idx": 5,
                         "source": "spec",
@@ -163538,206 +155908,125 @@
                         "field_width": 8
                       },
                       {
-                        "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 4,
-                        "msb_mem_word_idx": 4,
-                        "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 4,
-                        "msb_mem_word_idx": 4,
-                        "source": "spec",
-                        "start_bit": 40,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 4,
-                        "msb_mem_word_idx": 4,
-                        "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "ipv4_dst",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 4,
-                        "msb_mem_word_idx": 4,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 4,
-                        "msb_mem_word_idx": 4,
-                        "source": "spec",
-                        "start_bit": 32,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "l4_dport",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "l4_dport",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "l4_sport",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "l4_sport",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 3,
-                        "msb_mem_word_idx": 3,
-                        "source": "spec",
-                        "start_bit": 8,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 24,
-                        "field_width": 8
-                      },
-                      {
-                        "field_name": "eth_src",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 32,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "eth_src",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 2,
-                        "msb_mem_word_idx": 2,
-                        "source": "spec",
-                        "start_bit": 16,
-                        "field_width": 16
-                      },
-                      {
-                        "field_name": "eth_dst",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
                         "field_name": "icmp_type",
-                        "lsb_mem_word_offset": 9,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 8
                       },
                       {
-                        "field_name": "icmp_code",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
+                        "field_name": "ip_proto",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 8
                       },
                       {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 32,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "eth_src",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 32,
+                        "field_width": 8
+                      },
+                      {
                         "field_name": "eth_src",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 40,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_src",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "ipv4_src",
                         "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "ipv4_src",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
                         "source": "spec",
                         "start_bit": 8,
                         "field_width": 8
                       },
                       {
-                        "field_name": "eth_src",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 1,
-                        "msb_mem_word_idx": 1,
-                        "source": "spec",
-                        "start_bit": 0,
-                        "field_width": 8
-                      },
-                      {
                         "field_name": "eth_type",
-                        "lsb_mem_word_offset": 1,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 16
                       },
                       {
-                        "field_name": "ip_proto",
-                        "lsb_mem_word_offset": 17,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
+                        "field_name": "ipv4_src",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 8
                       },
                       {
-                        "field_name": "vlan_id",
-                        "lsb_mem_word_offset": 25,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
+                        "field_name": "l4_dport",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
                         "source": "spec",
                         "start_bit": 8,
-                        "field_width": 4
+                        "field_width": 8
                       },
                       {
-                        "field_name": "vlan_id",
-                        "lsb_mem_word_offset": 33,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
+                        "field_name": "l4_dport",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
                         "source": "spec",
                         "start_bit": 0,
                         "field_width": 8
                       },
                       {
                         "field_name": "ig_port",
-                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_offset": 9,
                         "lsb_mem_word_idx": 1,
                         "msb_mem_word_idx": 1,
                         "source": "spec",
@@ -163745,12 +156034,84 @@
                         "field_width": 1
                       },
                       {
+                        "field_name": "ig_port",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_dst",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "eth_src",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "l4_sport",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "l4_sport",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "vlan_id",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "vlan_id",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 4
+                      },
+                      {
                         "field_name": "ipv4_dst",
                         "lsb_mem_word_offset": 41,
                         "lsb_mem_word_idx": 5,
                         "msb_mem_word_idx": 5,
                         "source": "spec",
-                        "start_bit": 0,
+                        "start_bit": 24,
                         "field_width": 4
                       },
                       {
@@ -163759,7 +156120,7 @@
                         "lsb_mem_word_idx": 4,
                         "msb_mem_word_idx": 4,
                         "source": "spec",
-                        "start_bit": 4,
+                        "start_bit": 28,
                         "field_width": 4
                       },
                       {
@@ -163768,7 +156129,7 @@
                         "lsb_mem_word_idx": 3,
                         "msb_mem_word_idx": 3,
                         "source": "spec",
-                        "start_bit": 24,
+                        "start_bit": 16,
                         "field_width": 4
                       },
                       {
@@ -163777,16 +156138,7 @@
                         "lsb_mem_word_idx": 2,
                         "msb_mem_word_idx": 2,
                         "source": "spec",
-                        "start_bit": 28,
-                        "field_width": 4
-                      },
-                      {
-                        "field_name": "--unused--",
-                        "lsb_mem_word_offset": 29,
-                        "lsb_mem_word_idx": 0,
-                        "msb_mem_word_idx": 0,
-                        "source": "zero",
-                        "start_bit": 0,
+                        "start_bit": 20,
                         "field_width": 4
                       },
                       {
@@ -163800,12 +156152,12 @@
                       },
                       {
                         "field_name": "--unused--",
-                        "lsb_mem_word_offset": 42,
+                        "lsb_mem_word_offset": 10,
                         "lsb_mem_word_idx": 1,
                         "msb_mem_word_idx": 1,
                         "source": "zero",
                         "start_bit": 0,
-                        "field_width": 3
+                        "field_width": 7
                       }
                     ]
                   }
@@ -163826,391 +156178,16 @@
             "ternary_indirection_stage_table": {
               "stage_number": 9,
               "stage_table_type": "ternary_indirection",
-              "size": 32768,
+              "size": 2048,
               "pack_format": [
                 {
                   "memory_word_width": 128,
                   "table_word_width": 128,
-                  "entries_per_table_word": 32,
+                  "entries_per_table_word": 2,
                   "number_memory_units_per_table_word": 1,
                   "entries": [
                     {
-                      "entry_number": 31,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 124,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 127,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 30,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 120,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 123,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 29,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 116,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 119,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 28,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 112,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 115,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 27,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 108,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 111,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 26,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 104,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 107,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 25,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 100,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 103,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 24,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 96,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 99,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 23,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 92,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 95,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 22,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 88,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 91,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 21,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 84,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 87,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 20,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 80,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 83,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 19,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 76,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 79,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 18,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 72,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 75,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 17,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 68,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 71,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 16,
+                      "entry_number": 1,
                       "fields": [
                         {
                           "start_bit": 0,
@@ -164224,388 +156201,23 @@
                         },
                         {
                           "start_bit": 0,
-                          "field_width": 1,
+                          "field_width": 32,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
-                          "source": "zero",
+                          "source": "immediate",
                           "enable_pfe": false,
                           "lsb_mem_word_offset": 67,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 15,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 60,
-                          "field_name": "action"
+                          "field_name": "immediate"
                         },
                         {
                           "start_bit": 0,
-                          "field_width": 1,
+                          "field_width": 29,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
                           "source": "zero",
                           "enable_pfe": false,
-                          "lsb_mem_word_offset": 63,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 14,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 56,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 59,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 13,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 52,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 55,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 12,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 48,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 51,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 11,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 44,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 47,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 10,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 40,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 43,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 9,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 36,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 39,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 8,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 32,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 35,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 7,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 28,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 31,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 6,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 24,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 27,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 5,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 20,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 23,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 4,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 16,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 19,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 3,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 12,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 15,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 2,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 8,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 11,
-                          "field_name": "--padding_3_3--"
-                        }
-                      ]
-                    },
-                    {
-                      "entry_number": 1,
-                      "fields": [
-                        {
-                          "start_bit": 0,
-                          "field_width": 3,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "instr",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 4,
-                          "field_name": "action"
-                        },
-                        {
-                          "start_bit": 0,
-                          "field_width": 1,
-                          "lsb_mem_word_idx": 0,
-                          "msb_mem_word_idx": 0,
-                          "source": "zero",
-                          "enable_pfe": false,
-                          "lsb_mem_word_offset": 7,
-                          "field_name": "--padding_3_3--"
+                          "lsb_mem_word_offset": 99,
+                          "field_name": "--padding_35_63--"
                         }
                       ]
                     },
@@ -164624,13 +156236,23 @@
                         },
                         {
                           "start_bit": 0,
-                          "field_width": 1,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "enable_pfe": false,
+                          "lsb_mem_word_offset": 3,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "field_width": 29,
                           "lsb_mem_word_idx": 0,
                           "msb_mem_word_idx": 0,
                           "source": "zero",
                           "enable_pfe": false,
-                          "lsb_mem_word_offset": 3,
-                          "field_name": "--padding_3_3--"
+                          "lsb_mem_word_offset": 35,
+                          "field_name": "--padding_35_63--"
                         }
                       ]
                     }
@@ -164645,7 +156267,7 @@
               "action_format": [
                 {
                   "action_name": "FabricIngress.acl.set_next_id_acl",
-                  "action_handle": 536870951,
+                  "action_handle": 536870947,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 160,
@@ -164658,11 +156280,26 @@
                       "next_table_stage_no": 10
                     }
                   ],
-                  "immediate_fields": []
+                  "immediate_fields": [
+                    {
+                      "param_name": "next_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 24,
+                      "dest_width": 8
+                    },
+                    {
+                      "param_name": "next_id",
+                      "param_type": "parameter",
+                      "param_shift": 8,
+                      "dest_start": 0,
+                      "dest_width": 24
+                    }
+                  ]
                 },
                 {
                   "action_name": "FabricIngress.acl.punt_to_cpu",
-                  "action_handle": 536870952,
+                  "action_handle": 536870948,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 160,
@@ -164675,11 +156312,20 @@
                       "next_table_stage_no": 10
                     }
                   ],
-                  "immediate_fields": []
+                  "immediate_fields": [
+                    {
+                      "param_name": "constant_192",
+                      "param_type": "constant",
+                      "const_value": 192,
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 9
+                    }
+                  ]
                 },
                 {
                   "action_name": "FabricIngress.acl.set_clone_session_id",
-                  "action_handle": 536870953,
+                  "action_handle": 536870949,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 160,
@@ -164692,11 +156338,19 @@
                       "next_table_stage_no": 10
                     }
                   ],
-                  "immediate_fields": []
+                  "immediate_fields": [
+                    {
+                      "param_name": "clone_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 10
+                    }
+                  ]
                 },
                 {
                   "action_name": "FabricIngress.acl.drop",
-                  "action_handle": 536870954,
+                  "action_handle": 536870950,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 160,
@@ -164713,7 +156367,7 @@
                 },
                 {
                   "action_name": "FabricIngress.acl.nop_acl",
-                  "action_handle": 536870955,
+                  "action_handle": 536870951,
                   "table_name": "--END_OF_PIPELINE--",
                   "next_table": 0,
                   "next_table_full": 160,
@@ -164734,13 +156388,7 @@
         ],
         "match_type": "ternary"
       },
-      "action_data_table_refs": [
-        {
-          "how_referenced": "direct",
-          "handle": 33554440,
-          "name": "FabricIngress.acl.acl$action"
-        }
-      ],
+      "action_data_table_refs": [],
       "selection_table_refs": [],
       "meter_table_refs": [],
       "statistics_table_refs": [
@@ -164754,7 +156402,7 @@
       "actions": [
         {
           "name": "FabricIngress.acl.set_next_id_acl",
-          "handle": 536870951,
+          "handle": 536870947,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -164770,13 +156418,6 @@
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.source" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
               "dst": { "type": "phv", "name": "fabric_metadata.is_multicast" },
               "dst_mask": { "type": "immediate", "name": "1" },
               "src1": { "type": "immediate", "name": "0" }
@@ -164808,7 +156449,7 @@
         },
         {
           "name": "FabricIngress.acl.punt_to_cpu",
-          "handle": 536870952,
+          "handle": 536870948,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -164831,13 +156472,6 @@
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.source" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
               "dst": { "type": "phv", "name": "fabric_metadata.is_multicast" },
               "dst_mask": { "type": "immediate", "name": "1" },
               "src1": { "type": "immediate", "name": "0" }
@@ -164862,7 +156496,7 @@
         },
         {
           "name": "FabricIngress.acl.set_clone_session_id",
-          "handle": 536870953,
+          "handle": 536870949,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -164891,13 +156525,6 @@
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.source" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
               "dst": { "type": "phv", "name": "fabric_metadata.is_multicast" },
               "dst_mask": { "type": "immediate", "name": "1" },
               "src1": { "type": "immediate", "name": "0" }
@@ -164929,7 +156556,7 @@
         },
         {
           "name": "FabricIngress.acl.drop",
-          "handle": 536870954,
+          "handle": 536870950,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -164950,13 +156577,6 @@
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.source" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
               "dst": { "type": "phv", "name": "fabric_metadata.is_multicast" },
               "dst_mask": { "type": "immediate", "name": "1" },
               "src1": { "type": "immediate", "name": "0" }
@@ -164981,7 +156601,7 @@
         },
         {
           "name": "FabricIngress.acl.nop_acl",
-          "handle": 536870955,
+          "handle": 536870951,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -164990,13 +156610,6 @@
             {
               "name": "ModifyFieldPrimitive",
               "operation": "set",
-              "dst": { "type": "phv", "name": "fabric_metadata.int_meta.source" },
-              "dst_mask": { "type": "immediate", "name": "1" },
-              "src1": { "type": "immediate", "name": "0" }
-            },
-            {
-              "name": "ModifyFieldPrimitive",
-              "operation": "set",
               "dst": { "type": "phv", "name": "fabric_metadata.is_multicast" },
               "dst_mask": { "type": "immediate", "name": "1" },
               "src1": { "type": "immediate", "name": "0" }
@@ -165020,7 +156633,7 @@
           "is_action_meter_color_aware": false
         }
       ],
-      "default_action_handle": 536870955,
+      "default_action_handle": 536870951,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -165215,1208 +156828,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 33554440,
-      "name": "FabricIngress.acl.acl$action",
-      "table_type": "action",
-      "size": 2048,
-      "stage_tables": [
-        {
-          "stage_number": 9,
-          "size": 2048,
-          "stage_table_type": "action_data",
-          "logical_table_id": 0,
-          "pack_format": [
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 65,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 73,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 66,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 68,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 74,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 52,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 9,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 2,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 4,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 10,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 52,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870954
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 65,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 73,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 66,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 68,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 74,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 52,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 9,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 2,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 4,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 10,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 52,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870955
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 65,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 73,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 9,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 192, "dest_width": 9 } ],
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 66,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 68,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 74,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 39,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 89,
-                      "field_name": "--padding_25_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 9,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 9,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 192, "dest_width": 9 } ],
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "$constant4"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 2,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 4,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 10,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 39,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 25,
-                      "field_name": "--padding_25_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870952
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 65,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 73,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 10,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 80,
-                      "field_name": "clone_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 66,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 68,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 74,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 38,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 90,
-                      "field_name": "--padding_26_63--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 9,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 10,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 16,
-                      "field_name": "clone_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 2,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 4,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 10,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 4,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_15--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 38,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 26,
-                      "field_name": "--padding_26_63--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870953
-            },
-            {
-              "memory_word_width": 128,
-              "table_word_width": 128,
-              "entries_per_table_word": 2,
-              "number_memory_units_per_table_word": 1,
-              "entries": [
-                {
-                  "entry_number": 1,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 67,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 65,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 73,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 75,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 96,
-                      "field_name": "next_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 64,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 66,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 68,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 74,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 20,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 76,
-                      "field_name": "--padding_12_31--"
-                    }
-                  ]
-                },
-                {
-                  "entry_number": 0,
-                  "fields": [
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 3,
-                      "field_name": "$constant0"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 1,
-                      "field_name": "$constant1"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 9,
-                      "field_name": "$constant2"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "constant",
-                      "enable_pfe": false,
-                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
-                      "lsb_mem_word_offset": 11,
-                      "field_name": "$constant3"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 32,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "spec",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 32,
-                      "field_name": "next_id"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 0,
-                      "field_name": "--padding_0_0--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 2,
-                      "field_name": "--padding_2_2--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 5,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 4,
-                      "field_name": "--padding_4_8--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 1,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 10,
-                      "field_name": "--padding_10_10--"
-                    },
-                    {
-                      "start_bit": 0,
-                      "field_width": 20,
-                      "lsb_mem_word_idx": 0,
-                      "msb_mem_word_idx": 0,
-                      "source": "zero",
-                      "enable_pfe": false,
-                      "lsb_mem_word_offset": 12,
-                      "field_name": "--padding_12_31--"
-                    }
-                  ]
-                }
-              ],
-              "action_handle": 536870951
-            }
-          ],
-          "memory_resource_allocation": {
-            "memory_type": "sram",
-            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ]
-          }
-        }
-      ],
-      "actions": [
-        {
-          "name": "FabricIngress.acl.drop",
-          "handle": 536870954,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricIngress.acl.nop_acl",
-          "handle": 536870955,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricIngress.acl.punt_to_cpu",
-          "handle": 536870952,
-          "p4_parameters": []
-        },
-        {
-          "name": "FabricIngress.acl.set_clone_session_id",
-          "handle": 536870953,
-          "p4_parameters": [
-            {
-              "name": "clone_id",
-              "start_bit": 0,
-              "position": 0,
-              "bit_width": 32
-            }
-          ]
-        },
-        {
-          "name": "FabricIngress.acl.set_next_id_acl",
-          "handle": 536870951,
-          "p4_parameters": [
-            {
-              "name": "next_id",
-              "start_bit": 0,
-              "position": 0,
-              "bit_width": 32
-            }
-          ]
-        }
-      ],
-      "static_entries": [],
-      "how_referenced": "direct"
-    },
-    {
-      "direction": "ingress",
-      "handle": 16777247,
+      "handle": 16777235,
       "name": "FabricIngress.process_set_source_sink.tb_set_source",
       "table_type": "match",
       "size": 511,
@@ -166431,7 +156843,7 @@
         }
       ],
       "stateful_table_refs": [],
-      "default_action_handle": 536870968,
+      "default_action_handle": 536870964,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -166601,7 +157013,7 @@
             "action_format": [
               {
                 "action_name": "nop",
-                "action_handle": 536870968,
+                "action_handle": 536870964,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 4294967295,
                 "next_table_full": 161,
@@ -166618,7 +157030,7 @@
               },
               {
                 "action_name": "FabricIngress.process_set_source_sink.int_set_source",
-                "action_handle": 536870967,
+                "action_handle": 536870963,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 161,
@@ -166776,7 +157188,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870968,
+          "handle": 536870964,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -166796,7 +157208,7 @@
         },
         {
           "name": "FabricIngress.process_set_source_sink.int_set_source",
-          "handle": 536870967,
+          "handle": 536870963,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -166836,8 +157248,8 @@
     {
       "direction": "ingress",
       "attached_to": "FabricIngress.process_set_source_sink.tb_set_source",
-      "handle": 1879048230,
-      "name": "cond-18",
+      "handle": 1879048223,
+      "name": "cond-12",
       "table_type": "condition",
       "stage_tables": [
         {
@@ -166855,7 +157267,7 @@
         }
       ],
       "condition_fields": [
-        { "name": "fabric_metadata.skip_next", "start_bit": 2, "bit_width": 1 }
+        { "name": "fabric_metadata.skip_next", "start_bit": 1, "bit_width": 1 }
       ],
       "condition": "(fabric_metadata.skip_next == 0)",
       "size": 0
@@ -166897,7 +157309,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777248,
+      "handle": 16777236,
       "name": "FabricIngress.next.xconnect",
       "table_type": "match",
       "size": 4096,
@@ -166912,7 +157324,7 @@
         }
       ],
       "stateful_table_refs": [],
-      "default_action_handle": 536870958,
+      "default_action_handle": 536870954,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -166960,112 +157372,100 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 64
                       },
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 73
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 81
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
                       }
                     ],
                     "hash_bit": 0,
@@ -167074,208 +157474,226 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      }
-                    ],
-                    "hash_bit": 1,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 76
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 112
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 1,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
                       },
                       {
                         "field_bit": 1,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 2,
@@ -167284,82 +157702,106 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 84
                       },
                       {
                         "field_bit": 2,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 3,
@@ -167368,304 +157810,346 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 85
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 97
                       },
                       {
                         "field_bit": 4,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 5,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 6,
-                        "field_name": "next_id",
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 70
+                        "hash_match_group_bit": 102
                       },
                       {
-                        "field_bit": 8,
-                        "field_name": "next_id",
+                        "field_bit": 7,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 103
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 112
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
                       },
                       {
                         "field_bit": 5,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 5,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
                       }
                     ],
                     "hash_bit": 6,
@@ -167674,106 +158158,118 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 77
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 88
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "next_id",
+                        "field_bit": 2,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 98
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "next_id",
+                        "field_bit": 3,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 99
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "next_id",
+                        "field_bit": 5,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 101
                       },
                       {
                         "field_bit": 6,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 7,
@@ -167782,466 +158278,526 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 103
-                      }
-                    ],
-                    "hash_bit": 8,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
                         "field_bit": 8,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 104
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 104
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 64
                       },
                       {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 11,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 5,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 79
                       },
                       {
                         "field_bit": 0,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 96
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      }
+                    ],
+                    "hash_bit": 8,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 104
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 104
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 10,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 11,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 12,
@@ -168250,460 +158806,508 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
                         "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 72
+                        "hash_match_group_bit": 64
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 83
                       },
                       {
                         "field_bit": 1,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 97
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
                       },
                       {
                         "field_bit": 2,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 98
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
                       },
                       {
                         "field_bit": 3,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
-                    "hash_bit": 15,
-                    "seed": 0
+                    "hash_bit": 13,
+                    "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 66
+                        "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 3,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 67
+                        "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 6,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 70
+                        "hash_match_group_bit": 71
                       },
                       {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
+                        "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 84
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 97
                       },
                       {
                         "field_bit": 4,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 16,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
                       },
                       {
                         "field_bit": 5,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 14,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 16,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 17,
@@ -168712,154 +159316,202 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 3,
+                        "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 67
                       },
                       {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 88
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 97
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "next_id",
+                        "field_bit": 2,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
                       },
                       {
                         "field_bit": 7,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 18,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 96
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
                       }
                     ],
                     "hash_bit": 19,
@@ -168868,106 +159520,106 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 78
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "next_id",
+                        "field_bit": 0,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 96
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "next_id",
+                        "field_bit": 2,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
                       },
                       {
                         "field_bit": 7,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 20,
@@ -168976,130 +159628,82 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 66
+                        "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 6,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 70
                       },
                       {
-                        "field_bit": 7,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 71
                       },
                       {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "next_id",
+                        "field_bit": 6,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 102
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "next_id",
+                        "field_bit": 7,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 103
                       },
                       {
                         "field_bit": 8,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 104
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 21,
@@ -169108,100 +159712,94 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 73
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 71
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 75
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 112
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 114
                       },
                       {
-                        "field_bit": 30,
+                        "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 22,
@@ -169210,280 +159808,250 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
+                        "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 67
                       },
                       {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      },
-                      {
-                        "field_bit": 0,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 96
-                      }
-                    ],
-                    "hash_bit": 23,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 1,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 82
                       },
                       {
                         "field_bit": 1,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
                       }
                     ],
-                    "hash_bit": 24,
+                    "hash_bit": 23,
                     "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
                         "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 72
+                        "hash_match_group_bit": 64
                       },
                       {
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 73
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 83
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 2,
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 4,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 98
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 25,
@@ -169492,478 +160060,574 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
                         "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 99
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
+                        "hash_match_group_bit": 64
                       },
                       {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 85
                       },
                       {
-                        "field_bit": 29,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
                       },
                       {
                         "field_bit": 5,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 101
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 5,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 102
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 26,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
                       },
                       {
                         "field_bit": 6,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 29,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 30,
@@ -169972,124 +160636,76 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 71
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "next_id",
+                        "field_bit": 0,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 96
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
+                        "field_bit": 2,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 98
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "next_id",
+                        "field_bit": 6,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 102
                       },
                       {
                         "field_bit": 7,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 31,
@@ -170098,304 +160714,352 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 75
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 25,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 97
                       },
                       {
-                        "field_bit": 26,
-                        "field_name": "next_id",
+                        "field_bit": 2,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 98
                       },
                       {
-                        "field_bit": 30,
-                        "field_name": "next_id",
+                        "field_bit": 4,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
                       },
                       {
                         "field_bit": 8,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 104
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 112
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
                       },
                       {
                         "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 1,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 96
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
                       }
                     ],
                     "hash_bit": 34,
@@ -170404,106 +161068,124 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 83
                       },
                       {
                         "field_bit": 1,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 35,
@@ -170512,94 +161194,94 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 4,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 84
                       },
                       {
-                        "field_bit": 28,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 97
                       },
                       {
                         "field_bit": 2,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 98
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 100
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 36,
@@ -170608,82 +161290,106 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
                       },
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 5,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 6,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 70
                       },
                       {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 8,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 77
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 85
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 97
                       },
                       {
                         "field_bit": 3,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 99
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 37,
@@ -170692,224 +161398,224 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
                         "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "ig_port",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 100
-                      }
-                    ],
-                    "hash_bit": 38,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 66
-                      },
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
+                        "hash_match_group_bit": 64
                       },
                       {
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 73
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 5,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 86
                       },
                       {
-                        "field_bit": 24,
-                        "field_name": "next_id",
+                        "field_bit": 1,
+                        "field_name": "ig_port",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 97
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 113
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
+                        "hash_match_group_bit": 116
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
                       {
-                        "field_bit": 31,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
                       },
                       {
                         "field_bit": 5,
                         "field_name": "ig_port",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 101
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 102
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_port",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 103
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 39,
-                    "seed": 1
+                    "seed": 0
                   }
                 ],
                 "hash_function_number": 1,
@@ -170927,14 +161633,14 @@
                 ],
                 "ghost_bit_info": [
                   { "field_name": "next_id", "bit_in_match_spec": 0 },
+                  { "field_name": "next_id", "bit_in_match_spec": 1 },
+                  { "field_name": "next_id", "bit_in_match_spec": 2 },
+                  { "field_name": "next_id", "bit_in_match_spec": 3 },
+                  { "field_name": "next_id", "bit_in_match_spec": 4 },
+                  { "field_name": "next_id", "bit_in_match_spec": 5 },
+                  { "field_name": "next_id", "bit_in_match_spec": 6 },
+                  { "field_name": "next_id", "bit_in_match_spec": 7 },
                   { "field_name": "ig_port", "bit_in_match_spec": 0 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 1 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 2 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 3 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 4 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 5 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 6 },
-                  { "field_name": "ig_port", "bit_in_match_spec": 7 },
                   { "field_name": "ig_port", "bit_in_match_spec": 8 }
                 ]
               }
@@ -170942,7 +161648,7 @@
             "action_format": [
               {
                 "action_name": "nop",
-                "action_handle": 536870958,
+                "action_handle": 536870954,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 4294967295,
                 "next_table_full": 176,
@@ -170959,7 +161665,7 @@
               },
               {
                 "action_name": "FabricIngress.next.output_xconnect",
-                "action_handle": 536870956,
+                "action_handle": 536870952,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 176,
@@ -170984,7 +161690,7 @@
               },
               {
                 "action_name": "FabricIngress.next.set_next_id_xconnect",
-                "action_handle": 536870957,
+                "action_handle": 536870953,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 176,
@@ -171002,8 +161708,15 @@
                     "param_name": "next_id",
                     "param_type": "parameter",
                     "param_shift": 0,
+                    "dest_start": 24,
+                    "dest_width": 8
+                  },
+                  {
+                    "param_name": "next_id",
+                    "param_type": "parameter",
+                    "param_shift": 8,
                     "dest_start": 0,
-                    "dest_width": 32
+                    "dest_width": 24
                   }
                 ]
               }
@@ -171041,7 +161754,7 @@
                           "match_mode": "unused"
                         },
                         {
-                          "field_name": "next_id",
+                          "field_name": "ig_port",
                           "source": "spec",
                           "lsb_mem_word_offset": 33,
                           "start_bit": 1,
@@ -171174,7 +161887,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "next_id",
+                            "field_name": "ig_port",
                             "source": "spec",
                             "lsb_mem_word_offset": 33,
                             "start_bit": 1,
@@ -171308,7 +162021,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "next_id",
+                            "field_name": "ig_port",
                             "source": "spec",
                             "lsb_mem_word_offset": 33,
                             "start_bit": 1,
@@ -171442,7 +162155,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "next_id",
+                            "field_name": "ig_port",
                             "source": "spec",
                             "lsb_mem_word_offset": 33,
                             "start_bit": 1,
@@ -171576,7 +162289,7 @@
                             "match_mode": "s1q0"
                           },
                           {
-                            "field_name": "next_id",
+                            "field_name": "ig_port",
                             "source": "spec",
                             "lsb_mem_word_offset": 33,
                             "start_bit": 1,
@@ -171670,7 +162383,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870958,
+          "handle": 536870954,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -171690,7 +162403,7 @@
         },
         {
           "name": "FabricIngress.next.output_xconnect",
-          "handle": 536870956,
+          "handle": 536870952,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -171733,7 +162446,7 @@
         },
         {
           "name": "FabricIngress.next.set_next_id_xconnect",
-          "handle": 536870957,
+          "handle": 536870953,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -171819,7 +162532,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777249,
+      "handle": 16777237,
       "name": "FabricIngress.next.next_vlan",
       "table_type": "match",
       "size": 2048,
@@ -171834,7 +162547,7 @@
         }
       ],
       "stateful_table_refs": [],
-      "default_action_handle": 536870966,
+      "default_action_handle": 536870962,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -171870,52 +162583,88 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 0
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 0,
@@ -171924,64 +162673,70 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 1
                       },
                       {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 1,
@@ -171990,58 +162745,88 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 2
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 7
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 13
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 2,
@@ -172050,256 +162835,214 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 3,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 3
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 13
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 1,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 18
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 5,
@@ -172308,256 +163051,220 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 6
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 6,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 5,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
                       },
                       {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 50
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 51
                       }
                     ],
                     "hash_bit": 8,
@@ -172566,244 +163273,244 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 10,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 24
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 10,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 11,
@@ -172812,196 +163519,232 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 1
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 12,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 13,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      }
+                    ],
+                    "hash_bit": 12,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
+                      }
+                    ],
+                    "hash_bit": 13,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 14,
@@ -173010,58 +163753,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 4,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 4
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 48
                       },
                       {
-                        "field_bit": 31,
+                        "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 15,
@@ -173070,76 +163819,88 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 50
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 52
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 16,
@@ -173148,64 +163909,58 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 50
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 51
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 17,
@@ -173214,139 +163969,37 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
+                        "field_bit": 5,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 22
@@ -173355,193 +164008,235 @@
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 53
                       }
                     ],
-                    "hash_bit": 19,
-                    "seed": 1
+                    "hash_bit": 18,
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 8,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 8
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 23
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 20,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 20,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 21,
@@ -173550,160 +164245,148 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 0
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      }
-                    ],
-                    "hash_bit": 22,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 22,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 23,
@@ -173712,238 +164395,208 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 25,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 17
                       },
                       {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 1,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 18
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 50
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 25,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 26,
@@ -173952,133 +164605,337 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 20
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 49
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 23,
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 29,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 30,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 6,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 23
@@ -174087,259 +164944,25 @@
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 29,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 30,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 31,
@@ -174348,223 +164971,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 1
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 34,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 2
@@ -174573,85 +164980,307 @@
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 24
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 1
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 34,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 35,
@@ -174660,88 +165289,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 3,
+                        "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 12
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 23,
+                        "field_bit": 1,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 18
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 53
                       }
                     ],
                     "hash_bit": 36,
@@ -174750,244 +165355,208 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 4,
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 37,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 26
-                      },
-                      {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 52
                       }
                     ],
-                    "hash_bit": 38,
+                    "hash_bit": 37,
                     "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 6
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 20
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
                       },
                       {
-                        "field_bit": 31,
+                        "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 53
                       }
                     ],
                     "hash_bit": 39,
@@ -174996,8 +165565,6 @@
                 ],
                 "hash_function_number": 0,
                 "ghost_bit_to_hash_bit": [
-                  [ 0, 11, 22, 33 ],
-                  [ 1, 12, 23, 34 ],
                   [ 2, 13, 24, 35 ],
                   [ 3, 14, 25, 36 ],
                   [ 4, 15, 26, 37 ],
@@ -175005,7 +165572,9 @@
                   [ 6, 17, 28, 39 ],
                   [ 7, 18, 29, 30 ],
                   [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ]
+                  [ 9, 10, 21, 32 ],
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ]
                 ],
                 "ghost_bit_info": [
                   { "field_name": "next_id", "bit_in_match_spec": 0 },
@@ -175024,7 +165593,7 @@
             "action_format": [
               {
                 "action_name": "nop",
-                "action_handle": 536870966,
+                "action_handle": 536870962,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 4294967295,
                 "next_table_full": 177,
@@ -175041,7 +165610,7 @@
               },
               {
                 "action_name": "FabricIngress.next.set_vlan",
-                "action_handle": 536870965,
+                "action_handle": 536870961,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 177,
@@ -175707,7 +166276,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870966,
+          "handle": 536870962,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -175727,7 +166296,7 @@
         },
         {
           "name": "FabricIngress.next.set_vlan",
-          "handle": 536870965,
+          "handle": 536870961,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -175813,7 +166382,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777250,
+      "handle": 16777238,
       "name": "FabricIngress.next.multicast",
       "table_type": "match",
       "size": 2048,
@@ -175828,7 +166397,7 @@
         }
       ],
       "stateful_table_refs": [],
-      "default_action_handle": 536870964,
+      "default_action_handle": 536870960,
       "action_profile": "",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -175864,97 +166433,85 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 64
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 79
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 113
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 117
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 0,
-                    "seed": 0
+                    "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
@@ -175963,94 +166520,70 @@
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 76
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 113
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 1,
-                    "seed": 0
+                    "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 66
@@ -176059,529 +166592,469 @@
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 4,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      }
-                    ],
-                    "hash_bit": 5,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 6,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 71
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 81
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 4,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 5,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 6,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 8,
@@ -176590,175 +167063,67 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 9,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 69
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 74
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 76
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 88
@@ -176767,19 +167132,97 @@
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 9,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
                       {
-                        "field_bit": 31,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
                       }
                     ],
                     "hash_bit": 10,
@@ -176788,7 +167231,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 64
@@ -176797,61 +167240,55 @@
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 112
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 11,
@@ -176860,7 +167297,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 65
@@ -176869,73 +167306,31 @@
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 12,
@@ -176944,82 +167339,58 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 74
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 81
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 117
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 13,
@@ -177028,58 +167399,88 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 21,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 1,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
                       },
                       {
-                        "field_bit": 30,
+                        "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 117
                       }
                     ],
                     "hash_bit": 14,
@@ -177088,178 +167489,160 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 4,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 68
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 15,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 11,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 77
                       },
                       {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 83
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 115
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 117
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
                       }
                     ],
                     "hash_bit": 16,
@@ -177268,166 +167651,124 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 71
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 74
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 79
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 85
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 86
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 112
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 113
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 116
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 18,
@@ -177436,127 +167777,25 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 72
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 73
                       },
                       {
-                        "field_bit": 23,
+                        "field_bit": 6,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 87
@@ -177565,25 +167804,109 @@
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 112
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
+                        "hash_match_group_bit": 117
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
                       {
-                        "field_bit": 31,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 20,
@@ -177592,733 +167915,85 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 21,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 22,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      }
-                    ],
-                    "hash_bit": 23,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 25,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
                         "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      }
-                    ],
-                    "hash_bit": 26,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 76
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 85
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 88
                       },
                       {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 27,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 117
                       }
                     ],
-                    "hash_bit": 29,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 71
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 87
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      }
-                    ],
-                    "hash_bit": 30,
+                    "hash_bit": 21,
                     "seed": 0
                   },
                   {
@@ -178327,76 +168002,76 @@
                         "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 72
+                        "hash_match_group_bit": 64
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 69
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 84
+                        "hash_match_group_bit": 77
                       },
                       {
-                        "field_bit": 23,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 78
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 115
                       }
                     ],
-                    "hash_bit": 31,
+                    "hash_bit": 22,
                     "seed": 1
                   },
                   {
@@ -178405,367 +168080,1039 @@
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 73
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 92
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 64
+                        "hash_match_group_bit": 65
                       },
                       {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 65
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 70
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 74
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 118
                       }
                     ],
-                    "hash_bit": 34,
+                    "hash_bit": 23,
                     "seed": 1
                   },
                   {
                     "bits_to_xor": [
                       {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 25,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
                         "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 26,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
+                        "hash_match_group_bit": 68
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 80
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 83
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 84
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      }
+                    ],
+                    "hash_bit": 27,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 86
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 29,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 86
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 112
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 93
-                      }
-                    ],
-                    "hash_bit": 35,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 67
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 74
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 75
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 83
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 30,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 87
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 31,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 88
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 64
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 33,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 65
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 69
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 77
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 34,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 78
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 81
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 116
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
+                      }
+                    ],
+                    "hash_bit": 35,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 68
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 70
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 82
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 113
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 36,
@@ -178774,64 +169121,88 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 4,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 68
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 75
+                        "hash_match_group_bit": 67
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 76
+                        "hash_match_group_bit": 68
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 71
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 81
+                        "hash_match_group_bit": 73
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 75
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 86
+                        "hash_match_group_bit": 78
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 87
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 83
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 114
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 95
+                        "hash_match_group_bit": 119
                       }
                     ],
                     "hash_bit": 37,
@@ -178840,182 +169211,150 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 69
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 76
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 77
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 79
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 80
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 84
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 88
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 90
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 91
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 94
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 95
-                      }
-                    ],
-                    "hash_bit": 38,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 70
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 74
+                        "hash_match_group_bit": 66
                       },
                       {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 0,
+                        "hash_match_group_bit": 67
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 71
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
                         "hash_match_group_bit": 75
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 0,
                         "hash_match_group_bit": 76
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 77
+                        "hash_match_group_bit": 84
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 78
+                        "hash_match_group_bit": 112
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 82
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 85
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 86
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 0,
-                        "hash_match_group_bit": 89
+                        "hash_match_group_bit": 114
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 91
+                        "hash_match_group_bit": 115
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 92
+                        "hash_match_group_bit": 116
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 0,
-                        "hash_match_group_bit": 93
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 66
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 72
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 74
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 76
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 79
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 85
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 112
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 115
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 117
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 0,
+                        "hash_match_group_bit": 118
                       }
                     ],
                     "hash_bit": 39,
-                    "seed": 0
+                    "seed": 1
                   }
                 ],
                 "hash_function_number": 1,
                 "ghost_bit_to_hash_bit": [
-                  [ 0, 11, 22, 33 ],
-                  [ 1, 12, 23, 34 ],
                   [ 2, 13, 24, 35 ],
                   [ 3, 14, 25, 36 ],
                   [ 4, 15, 26, 37 ],
@@ -179023,7 +169362,9 @@
                   [ 6, 17, 28, 39 ],
                   [ 7, 18, 29, 30 ],
                   [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ]
+                  [ 9, 10, 21, 32 ],
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ]
                 ],
                 "ghost_bit_info": [
                   { "field_name": "next_id", "bit_in_match_spec": 0 },
@@ -179042,7 +169383,7 @@
             "action_format": [
               {
                 "action_name": "nop",
-                "action_handle": 536870964,
+                "action_handle": 536870960,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 4294967295,
                 "next_table_full": 178,
@@ -179059,7 +169400,7 @@
               },
               {
                 "action_name": "FabricIngress.next.set_mcast_group_id",
-                "action_handle": 536870963,
+                "action_handle": 536870959,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 178,
@@ -179718,7 +170059,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870964,
+          "handle": 536870960,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -179738,7 +170079,7 @@
         },
         {
           "name": "FabricIngress.next.set_mcast_group_id",
-          "handle": 536870963,
+          "handle": 536870959,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -179831,14 +170172,14 @@
     },
     {
       "direction": "ingress",
-      "handle": 16777251,
+      "handle": 16777239,
       "name": "FabricIngress.next.hashed",
       "table_type": "match",
       "size": 2048,
       "action_data_table_refs": [
         {
           "how_referenced": "indirect",
-          "handle": 33554441,
+          "handle": 33554442,
           "name": "FabricIngress.next.hashed_selector"
         }
       ],
@@ -179858,7 +170199,7 @@
         }
       ],
       "stateful_table_refs": [],
-      "default_action_handle": 536870962,
+      "default_action_handle": 536870958,
       "action_profile": "FabricIngress.next.hashed_selector",
       "default_next_table_mask": 0,
       "default_next_table_default": 0,
@@ -179894,7 +170235,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 0
@@ -179903,55 +170244,67 @@
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 0,
@@ -179960,82 +170313,58 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 1
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 1,
@@ -180044,7 +170373,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 2
@@ -180053,181 +170382,223 @@
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 2,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 3,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 7
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 2,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 3,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 4,
@@ -180236,82 +170607,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 5
-                      },
-                      {
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 5,
@@ -180320,58 +170673,82 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 6
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 8
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 4,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 6,
@@ -180380,91 +170757,121 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 7,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 7
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 7,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
                         "hash_match_group_bit": 22
                       },
                       {
-                        "field_bit": 23,
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 7,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 6,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 23
@@ -180473,97 +170880,73 @@
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 51
                       }
                     ],
                     "hash_bit": 8,
-                    "seed": 1
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 24
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 9,
@@ -180572,82 +170955,58 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 7
                       },
                       {
-                        "field_bit": 16,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 50
                       },
                       {
-                        "field_bit": 28,
+                        "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 10,
@@ -180656,7 +171015,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 0
@@ -180665,67 +171024,67 @@
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 4
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
-                        "field_bit": 27,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 11,
@@ -180734,46 +171093,94 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 1
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 8
                       },
                       {
-                        "field_bit": 23,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
                       }
                     ],
                     "hash_bit": 12,
@@ -180782,7 +171189,7 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 2
@@ -180791,61 +171198,79 @@
                         "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 3
                       },
                       {
-                        "field_bit": 15,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 17,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 17
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 13,
@@ -180854,556 +171279,556 @@
                   {
                     "bits_to_xor": [
                       {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 14,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      }
+                    ],
+                    "hash_bit": 15,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
                         "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 16,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
                         "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 14,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      }
-                    ],
-                    "hash_bit": 15,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 5,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 5
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 16,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 17,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 7
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 18,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 8
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 10
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 17,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
                         "hash_match_group_bit": 22
                       },
                       {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 18,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
                         "hash_match_group_bit": 23
                       },
                       {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 19,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 19,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
                       {
-                        "field_bit": 31,
+                        "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 23
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 20,
@@ -181412,73 +171837,43 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 9,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
+                        "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
+                        "field_bit": 7,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 24
@@ -181487,97 +171882,91 @@
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 50
                       }
                     ],
                     "hash_bit": 21,
-                    "seed": 1
+                    "seed": 0
                   },
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 0,
+                        "field_bit": 8,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 0
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 30,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 22,
@@ -181586,64 +171975,58 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 1,
+                        "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 1
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 23,
@@ -181652,178 +172035,148 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 2,
+                        "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 10,
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 11,
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 24,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 24,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
                       }
                     ],
                     "hash_bit": 25,
@@ -181832,58 +172185,64 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 4,
+                        "field_bit": 12,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 4
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 12
                       },
                       {
-                        "field_bit": 13,
+                        "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 2,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 19
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 48
                       },
                       {
-                        "field_bit": 29,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 49
                       },
                       {
-                        "field_bit": 30,
+                        "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 50
                       }
                     ],
                     "hash_bit": 26,
@@ -181892,7 +172251,13 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 5
@@ -181901,73 +172266,85 @@
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 16
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 19,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 11
                       },
                       {
-                        "field_bit": 20,
+                        "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       },
                       {
                         "field_bit": 31,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 27,
@@ -181976,154 +172353,154 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 6
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 28,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 7
-                      },
-                      {
-                        "field_bit": 13,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 6
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
                         "hash_match_group_bit": 21
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
                         "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
                       },
                       {
-                        "field_bit": 31,
+                        "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 31
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 28,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 22
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 29,
@@ -182132,49 +172509,61 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 7,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 7
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
+                        "hash_match_group_bit": 2
                       },
                       {
-                        "field_bit": 12,
+                        "field_bit": 11,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 3
                       },
                       {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 13
+                        "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 14,
+                        "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 18,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 10
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 22,
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 5,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 22
@@ -182183,25 +172572,25 @@
                         "field_bit": 24,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 48
                       },
                       {
                         "field_bit": 28,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 28
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 30,
@@ -182210,79 +172599,253 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 8,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 8
-                      },
-                      {
                         "field_bit": 10,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 2
                       },
                       {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 17
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
                       },
                       {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
+                        "field_bit": 6,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 23
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 49
                       },
                       {
                         "field_bit": 26,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      }
+                    ],
+                    "hash_bit": 31,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 15
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 24
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      }
+                    ],
+                    "hash_bit": 32,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 0
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
                       },
                       {
                         "field_bit": 27,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 27
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
                       }
                     ],
-                    "hash_bit": 31,
+                    "hash_bit": 33,
                     "seed": 0
                   },
                   {
@@ -182291,433 +172854,319 @@
                         "field_bit": 9,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 9
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
-                        "field_bit": 14,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 32,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 0,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 0
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 33,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 1,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 1
                       },
                       {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
                         "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 13
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 23,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 23
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 34,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 2,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 2
-                      },
-                      {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 22,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 22
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      }
-                    ],
-                    "hash_bit": 35,
-                    "seed": 1
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 3,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 3
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
+                        "hash_match_group_bit": 5
                       },
                       {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
+                        "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 18,
+                        "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 18
+                        "hash_match_group_bit": 8
                       },
                       {
-                        "field_bit": 19,
+                        "field_bit": 17,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 19
+                        "hash_match_group_bit": 9
                       },
                       {
                         "field_bit": 20,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 25,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 25
-                      },
-                      {
-                        "field_bit": 26,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 26
-                      },
-                      {
-                        "field_bit": 28,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 28
-                      },
-                      {
-                        "field_bit": 29,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 29
-                      },
-                      {
-                        "field_bit": 30,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 30
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 36,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 4,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 4
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 12
                       },
                       {
                         "field_bit": 21,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      }
+                    ],
+                    "hash_bit": 34,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
                       },
                       {
                         "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 23
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 24,
+                        "field_bit": 0,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 24
+                        "hash_match_group_bit": 17
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 25,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 35,
+                    "seed": 0
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 10
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 18
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 49
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 52
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 36,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 5
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 6
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 9
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 13
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 14
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 19
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 54
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
                       }
                     ],
                     "hash_bit": 37,
@@ -182726,178 +173175,142 @@
                   {
                     "bits_to_xor": [
                       {
-                        "field_bit": 5,
+                        "field_bit": 10,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 2
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 3
+                      },
+                      {
+                        "field_bit": 13,
                         "field_name": "next_id",
                         "hash_match_group": 1,
                         "hash_match_group_bit": 5
                       },
                       {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
                         "field_bit": 14,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 14
-                      },
-                      {
-                        "field_bit": 15,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 15
-                      },
-                      {
-                        "field_bit": 16,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
-                      },
-                      {
-                        "field_bit": 24,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 24
-                      },
-                      {
-                        "field_bit": 27,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 27
-                      },
-                      {
-                        "field_bit": 31,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 31
-                      }
-                    ],
-                    "hash_bit": 38,
-                    "seed": 0
-                  },
-                  {
-                    "bits_to_xor": [
-                      {
-                        "field_bit": 6,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
                         "hash_match_group_bit": 6
                       },
                       {
-                        "field_bit": 10,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 10
-                      },
-                      {
-                        "field_bit": 11,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 11
-                      },
-                      {
-                        "field_bit": 12,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 12
-                      },
-                      {
                         "field_bit": 15,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 15
+                        "hash_match_group_bit": 7
                       },
                       {
                         "field_bit": 16,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 16
-                      },
-                      {
-                        "field_bit": 17,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 17
-                      },
-                      {
-                        "field_bit": 18,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 18
-                      },
-                      {
-                        "field_bit": 19,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 19
-                      },
-                      {
-                        "field_bit": 20,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 20
-                      },
-                      {
-                        "field_bit": 21,
-                        "field_name": "next_id",
-                        "hash_match_group": 1,
-                        "hash_match_group_bit": 21
+                        "hash_match_group_bit": 8
                       },
                       {
                         "field_bit": 22,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 22
+                        "hash_match_group_bit": 14
                       },
                       {
-                        "field_bit": 25,
+                        "field_bit": 23,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 25
+                        "hash_match_group_bit": 15
                       },
                       {
-                        "field_bit": 26,
+                        "field_bit": 3,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 26
+                        "hash_match_group_bit": 20
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 48
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 51
                       },
                       {
                         "field_bit": 29,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 29
+                        "hash_match_group_bit": 53
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 55
+                      }
+                    ],
+                    "hash_bit": 38,
+                    "seed": 1
+                  },
+                  {
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 12,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 4
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 7
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 8
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 11
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 12
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 21
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 50
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "next_id",
+                        "hash_match_group": 1,
+                        "hash_match_group_bit": 53
                       },
                       {
                         "field_bit": 30,
                         "field_name": "next_id",
                         "hash_match_group": 1,
-                        "hash_match_group_bit": 30
+                        "hash_match_group_bit": 54
                       }
                     ],
                     "hash_bit": 39,
@@ -182906,8 +173319,6 @@
                 ],
                 "hash_function_number": 2,
                 "ghost_bit_to_hash_bit": [
-                  [ 0, 11, 22, 33 ],
-                  [ 1, 12, 23, 34 ],
                   [ 2, 13, 24, 35 ],
                   [ 3, 14, 25, 36 ],
                   [ 4, 15, 26, 37 ],
@@ -182915,7 +173326,9 @@
                   [ 6, 17, 28, 39 ],
                   [ 7, 18, 29, 30 ],
                   [ 8, 19, 20, 31 ],
-                  [ 9, 10, 21, 32 ]
+                  [ 9, 10, 21, 32 ],
+                  [ 0, 11, 22, 33 ],
+                  [ 1, 12, 23, 34 ]
                 ],
                 "ghost_bit_info": [
                   { "field_name": "next_id", "bit_in_match_spec": 0 },
@@ -182934,7 +173347,7 @@
             "action_format": [
               {
                 "action_name": "nop",
-                "action_handle": 536870962,
+                "action_handle": 536870958,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 4294967295,
                 "next_table_full": 255,
@@ -182945,7 +173358,7 @@
               },
               {
                 "action_name": "FabricIngress.next.output_hashed",
-                "action_handle": 536870959,
+                "action_handle": 536870955,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 255,
@@ -182956,7 +173369,7 @@
               },
               {
                 "action_name": "FabricIngress.next.routing_hashed",
-                "action_handle": 536870960,
+                "action_handle": 536870956,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 255,
@@ -182967,7 +173380,7 @@
               },
               {
                 "action_name": "FabricIngress.next.mpls_routing_hashed",
-                "action_handle": 536870961,
+                "action_handle": 536870957,
                 "table_name": "--END_OF_PIPELINE--",
                 "next_table": 0,
                 "next_table_full": 255,
@@ -183777,7 +174190,7 @@
       "actions": [
         {
           "name": "nop",
-          "handle": 536870962,
+          "handle": 536870958,
           "primitives": [],
           "indirect_resources": [],
           "allowed_as_default_action": true,
@@ -183797,7 +174210,7 @@
         },
         {
           "name": "FabricIngress.next.output_hashed",
-          "handle": 536870959,
+          "handle": 536870955,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -183837,7 +174250,7 @@
         },
         {
           "name": "FabricIngress.next.routing_hashed",
-          "handle": 536870960,
+          "handle": 536870956,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -183893,7 +174306,7 @@
         },
         {
           "name": "FabricIngress.next.mpls_routing_hashed",
-          "handle": 536870961,
+          "handle": 536870957,
           "primitives": [
             {
               "name": "CountPrimitive",
@@ -183974,7 +174387,7 @@
       "selection_key_name": "undefined",
       "how_referenced": "indirect",
       "max_port_pool_size": 120,
-      "bound_to_action_data_table_handle": 33554441,
+      "bound_to_action_data_table_handle": 33554442,
       "stage_tables": [
         {
           "stage_number": 11,
@@ -184002,7 +174415,7 @@
     },
     {
       "direction": "ingress",
-      "handle": 33554441,
+      "handle": 33554442,
       "name": "FabricIngress.next.hashed_selector",
       "table_type": "action",
       "size": 32768,
@@ -184105,7 +174518,7 @@
                   ]
                 }
               ],
-              "action_handle": 536870961
+              "action_handle": 536870957
             },
             {
               "memory_word_width": 128,
@@ -184139,7 +174552,7 @@
                   ]
                 }
               ],
-              "action_handle": 536870959
+              "action_handle": 536870955
             },
             {
               "memory_word_width": 128,
@@ -184223,7 +174636,7 @@
                   ]
                 }
               ],
-              "action_handle": 536870960
+              "action_handle": 536870956
             },
             {
               "memory_word_width": 128,
@@ -184247,7 +174660,7 @@
                   ]
                 }
               ],
-              "action_handle": 536870962
+              "action_handle": 536870958
             }
           ],
           "memory_resource_allocation": {
@@ -184292,7 +174705,7 @@
       "actions": [
         {
           "name": "FabricIngress.next.mpls_routing_hashed",
-          "handle": 536870961,
+          "handle": 536870957,
           "p4_parameters": [
             {
               "name": "port_num",
@@ -184312,7 +174725,7 @@
         },
         {
           "name": "FabricIngress.next.output_hashed",
-          "handle": 536870959,
+          "handle": 536870955,
           "p4_parameters": [
             {
               "name": "port_num",
@@ -184324,7 +174737,7 @@
         },
         {
           "name": "FabricIngress.next.routing_hashed",
-          "handle": 536870960,
+          "handle": 536870956,
           "p4_parameters": [
             {
               "name": "port_num",
@@ -184336,7 +174749,7 @@
             { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 }
           ]
         },
-        { "name": "nop", "handle": 536870962, "p4_parameters": [] }
+        { "name": "nop", "handle": 536870958, "p4_parameters": [] }
       ],
       "static_entries": [],
       "how_referenced": "indirect"
@@ -184430,7 +174843,7 @@
     { "stage": 2, "gress": "egress", "match_dependent": true },
     { "stage": 3, "gress": "ingress", "match_dependent": true },
     { "stage": 3, "gress": "egress", "match_dependent": true },
-    { "stage": 4, "gress": "ingress", "match_dependent": true },
+    { "stage": 4, "gress": "ingress", "match_dependent": false },
     { "stage": 4, "gress": "egress", "match_dependent": true },
     { "stage": 5, "gress": "ingress", "match_dependent": true },
     { "stage": 5, "gress": "egress", "match_dependent": true },
@@ -184481,17 +174894,22 @@
     {
       "fully_qualified_name": "mau[0].dp.match_input_xbar_din_power_ctl",
       "name": "stage_0_match_input_xbar_din_power_ctl",
-      "value": "0000000000000000000000000000002c00000000000000000000000000000000000000000000000000000003000000000000000000000048000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000000000000000000000"
+      "value": "0000000000000004000000000000002c00000000000000000000000000000000000000000000000000000003000000100000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[0].dp.xbar_hash.hash.parity_group_mask",
       "name": "stage_0_parity_group_mask",
-      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000003000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[1].rams.map_alu.stats_wrap[3].stats.statistics_ctl",
+      "name": "stage_1_statistics_ctl_3",
+      "value": "00000059"
     },
     {
       "fully_qualified_name": "mau[1].dp.match_input_xbar_din_power_ctl",
       "name": "stage_1_match_input_xbar_din_power_ctl",
-      "value": "0000000000000000000000000000000000000002000000080000008000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000000000000800000003100000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000004000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[1].dp.xbar_hash.hash.parity_group_mask",
@@ -184499,24 +174917,19 @@
       "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
-      "fully_qualified_name": "mau[2].rams.map_alu.stats_wrap[3].stats.statistics_ctl",
-      "name": "stage_2_statistics_ctl_3",
-      "value": "00000019"
-    },
-    {
       "fully_qualified_name": "mau[2].dp.match_input_xbar_din_power_ctl",
       "name": "stage_2_match_input_xbar_din_power_ctl",
-      "value": "000000060000000000000000000000000000000000000000000000800000000000000000000000a400000000000000000000000000000060000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000004000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[2].dp.xbar_hash.hash.hash_seed",
       "name": "stage_2_hash_seed",
-      "value": "00000000000000000000000000000001000000010000000100000001000000010000000000000001000000010000000100000001000000000000000000000001000000000000000000000000000000010000000100000000000000010000000000000001000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000001000000000000000200000000000000020000000300000003000000000000000000000003000000020000000200000001000000020000000200000003000000020000000300000000000000020000000200000003000000030000000000000001000000020000000300000002000000020000000200000003000000020000000000000002000000000000000300000003000000010000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[2].dp.xbar_hash.hash.parity_group_mask",
       "name": "stage_2_parity_group_mask",
-      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000001000000000000000400000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[3].rams.map_alu.stats_wrap[3].stats.statistics_ctl",
@@ -184526,62 +174939,57 @@
     {
       "fully_qualified_name": "mau[3].dp.match_input_xbar_din_power_ctl",
       "name": "stage_3_match_input_xbar_din_power_ctl",
-      "value": "0000004a00000000000000000000000000000048000000010000008000000000000000000000000400000000000000000000000100000040000000000000000000000080000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
-    },
-    {
-      "fully_qualified_name": "mau[3].dp.xbar_hash.hash.hash_seed",
-      "name": "stage_3_hash_seed",
-      "value": "00000001000000000000000300000000000000020000000000000000000000030000000300000000000000010000000100000000000000010000000100000001000000010000000300000000000000020000000200000001000000030000000000000003000000020000000000000000000000030000000100000002000000030000000200000001000000030000000100000000000000030000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000000000000000000000000000020000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004400000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[3].dp.xbar_hash.hash.parity_group_mask",
       "name": "stage_3_parity_group_mask",
-      "value": "00000003000000000000000400000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000001000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[4].dp.match_input_xbar_din_power_ctl",
       "name": "stage_4_match_input_xbar_din_power_ctl",
-      "value": "0000004a00000020000000000000000000000000000000010000000000000000000000000000001800000000000000000000000100000000000000000000000000000080000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[4].dp.xbar_hash.hash.hash_seed",
+      "name": "stage_4_hash_seed",
+      "value": "00000000000000000000000100000000000000000000000000000001000000010000000100000001000000000000000100000000000000010000000000000001000000010000000100000001000000010000000000000000000000010000000000000001000000010000000100000000000000000000000000000000000000010000000000000000000000000000000100000001000000000000000100000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[4].dp.xbar_hash.hash.parity_group_mask",
       "name": "stage_4_parity_group_mask",
-      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
-    },
-    {
-      "fully_qualified_name": "mau[5].rams.map_alu.stats_wrap[1].stats.statistics_ctl",
-      "name": "stage_5_statistics_ctl_1",
-      "value": "00000019"
-    },
-    {
-      "fully_qualified_name": "mau[5].rams.map_alu.stats_wrap[2].stats.statistics_ctl",
-      "name": "stage_5_statistics_ctl_2",
-      "value": "00000059"
+      "value": "00000001000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[5].rams.map_alu.stats_wrap[3].stats.statistics_ctl",
       "name": "stage_5_statistics_ctl_3",
-      "value": "00000059"
+      "value": "00000019"
     },
     {
       "fully_qualified_name": "mau[5].dp.match_input_xbar_din_power_ctl",
       "name": "stage_5_match_input_xbar_din_power_ctl",
-      "value": "000000000000000000000000000000e000000000000000000000008000000004000000000000000000000003000000100000000000000084000000000000000000000000000000110000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000"
-    },
-    {
-      "fully_qualified_name": "mau[5].dp.xbar_hash.hash.hash_seed",
-      "name": "stage_5_hash_seed",
-      "value": "00000001000000010000000000000004000000050000000500000000000000050000000000000001000000040000000400000001000000050000000100000005000000040000000000000000000000050000000500000004000000050000000000000005000000000000000000000000000000040000000400000001000000010000000100000005000000000000000400000000000000040000000400000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000000000000000000000000000000000000000000000000000000000000600000000500000000000000800000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[5].dp.xbar_hash.hash.parity_group_mask",
       "name": "stage_5_parity_group_mask",
-      "value": "00000001000000000000000a00000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[6].rams.map_alu.stats_wrap[3].stats.statistics_ctl",
+      "name": "stage_6_statistics_ctl_3",
+      "value": "00000019"
     },
     {
       "fully_qualified_name": "mau[6].dp.match_input_xbar_din_power_ctl",
       "name": "stage_6_match_input_xbar_din_power_ctl",
-      "value": "0000000000000000000000000000006000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000000000000000000000400000048000000000000000000000004000000200000000000000007000000000000000000000004000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[7].rams.map_alu.stats_wrap[1].stats.statistics_ctl",
+      "name": "stage_7_statistics_ctl_1",
+      "value": "00000019"
     },
     {
       "fully_qualified_name": "mau[7].rams.map_alu.stats_wrap[2].stats.statistics_ctl",
@@ -184591,27 +174999,27 @@
     {
       "fully_qualified_name": "mau[7].rams.map_alu.stats_wrap[3].stats.statistics_ctl",
       "name": "stage_7_statistics_ctl_3",
-      "value": "00000019"
+      "value": "00000059"
     },
     {
       "fully_qualified_name": "mau[7].dp.match_input_xbar_din_power_ctl",
       "name": "stage_7_match_input_xbar_din_power_ctl",
-      "value": "00000010000000000000000000000000000000b000000002000000240000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000000000000080000000000000024000000b0000000030000000000000000000000800000000100000002000000080000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[7].dp.xbar_hash.hash.hash_seed",
       "name": "stage_7_hash_seed",
-      "value": "00000000000000000000000100000000000000010000000100000001000000010000000000000000000000010000000000000001000000000000000000000000000000000000000100000001000000000000000100000001000000000000000100000000000000010000000100000001000000000000000000000000000000010000000000000001000000000000000000000001000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000001000000010000000000000002000000000000000300000003000000010000000100000003000000000000000100000003000000000000000000000002000000000000000100000003000000030000000100000002000000010000000200000001000000000000000000000000000000030000000100000003000000030000000300000000000000000000000000000001000000020000000300000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[7].dp.xbar_hash.hash.parity_group_mask",
       "name": "stage_7_parity_group_mask",
-      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000001000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[8].dp.match_input_xbar_din_power_ctl",
       "name": "stage_8_match_input_xbar_din_power_ctl",
-      "value": "0000001000000000000000000000000000000010000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000001000000008000000000000000000000000000000020000002400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[8].dp.xbar_hash.hash.parity_group_mask",
@@ -184626,7 +175034,7 @@
     {
       "fully_qualified_name": "mau[9].dp.match_input_xbar_din_power_ctl",
       "name": "stage_9_match_input_xbar_din_power_ctl",
-      "value": "0000004200000000000000000000000000000048000000100000000000000000000000080000009c00000000000000000000000000000030000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000009000000004000000000000000000000048000000180000000000000000000000300000000700000000000000000000000000000000000000000000000000000002000000000000001800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[10].rams.map_alu.stats_wrap[2].stats.statistics_ctl",
@@ -184641,12 +175049,12 @@
     {
       "fully_qualified_name": "mau[10].dp.match_input_xbar_din_power_ctl",
       "name": "stage_10_match_input_xbar_din_power_ctl",
-      "value": "0000002000000000000000000000000000000000000000080000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000000000000000000000000000000000000000000000200000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000004000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[10].dp.xbar_hash.hash.hash_seed",
       "name": "stage_10_hash_seed",
-      "value": "00000002000000020000000000000002000000000000000200000000000000000000000000000000000000020000000200000002000000000000000000000000000000000000000000000002000000020000000200000000000000020000000000000002000000000000000200000002000000000000000200000000000000020000000000000002000000000000000000000000000000000000000200000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000002000000000000000000000002000000020000000000000000000000000000000200000002000000000000000000000002000000020000000200000002000000020000000000000000000000020000000200000000000000020000000200000000000000000000000000000000000000020000000000000000000000020000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[10].dp.xbar_hash.hash.parity_group_mask",
@@ -184671,12 +175079,12 @@
     {
       "fully_qualified_name": "mau[11].dp.match_input_xbar_din_power_ctl",
       "name": "stage_11_match_input_xbar_din_power_ctl",
-      "value": "0000003000000001000000000000000000000000000000100000000000000000000000000000001800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "0000001000000009000000000000000000000000000000180000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000004000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[11].dp.xbar_hash.hash.hash_seed",
       "name": "stage_11_hash_seed",
-      "value": "00000000000000000000000300000002000000070000000600000007000000070000000600000000000000020000000500000001000000010000000000000004000000070000000300000005000000050000000200000007000000000000000400000004000000050000000200000006000000000000000500000004000000020000000100000005000000020000000500000001000000010000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+      "value": "00000002000000020000000500000005000000040000000400000004000000000000000200000003000000030000000500000000000000000000000400000002000000030000000500000000000000020000000300000001000000030000000600000003000000060000000200000007000000070000000600000005000000040000000500000002000000070000000300000005000000000000000500000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
     },
     {
       "fully_qualified_name": "mau[11].dp.xbar_hash.hash.parity_group_mask",
@@ -184694,22 +175102,6 @@
           "slice": { "start_bit": 0, "bit_width": 8 }
         },
         {
-          "name": "^fields_md_spgw_tunnel_src_addr",
-          "slice": { "start_bit": 0, "bit_width": 32 }
-        },
-        {
-          "name": "^fields_md_spgw_tunnel_dst_addr",
-          "slice": { "start_bit": 0, "bit_width": 32 }
-        },
-        {
-          "name": "^fields_md_spgw_ipv4_len",
-          "slice": { "start_bit": 0, "bit_width": 16 }
-        },
-        {
-          "name": "^fields_md_spgw_teid",
-          "slice": { "start_bit": 0, "bit_width": 32 }
-        },
-        {
           "name": "^fields_md_l4_dport",
           "slice": { "start_bit": 0, "bit_width": 16 }
         },
@@ -184730,6 +175122,26 @@
           "slice": { "start_bit": 0, "bit_width": 8 }
         },
         {
+          "name": "^fields_md_spgw_tunnel_src_addr",
+          "slice": { "start_bit": 0, "bit_width": 32 }
+        },
+        {
+          "name": "^fields_md_spgw_tunnel_dst_addr",
+          "slice": { "start_bit": 0, "bit_width": 32 }
+        },
+        {
+          "name": "^fields_md_spgw_tunnel_src_port",
+          "slice": { "start_bit": 0, "bit_width": 16 }
+        },
+        {
+          "name": "^fields_md_spgw_ipv4_len",
+          "slice": { "start_bit": 0, "bit_width": 16 }
+        },
+        {
+          "name": "^fields_md_spgw_teid",
+          "slice": { "start_bit": 0, "bit_width": 32 }
+        },
+        {
           "name": "^fields_md_spgw_ctr_id",
           "slice": { "start_bit": 0, "bit_width": 32 }
         },
@@ -184741,14 +175153,7 @@
           "name": "^fields_md_vlan_cfi",
           "slice": { "start_bit": 0, "bit_width": 1 }
         },
-        {
-          "name": "^fields_md_int_meta_source",
-          "slice": { "start_bit": 0, "bit_width": 1 }
-        },
-        {
-          "name": "^fields_md_spgw_outer_header_creation",
-          "slice": { "start_bit": 0, "bit_width": 1 }
-        },
+        { "name": "__pad_0", "slice": { "start_bit": 0, "bit_width": 2 } },
         {
           "name": "^fields_md_is_multicast",
           "slice": { "start_bit": 0, "bit_width": 1 }
@@ -184757,12 +175162,33 @@
           "name": "^fields_md_is_controller_packet_out",
           "slice": { "start_bit": 0, "bit_width": 1 }
         },
-        { "name": "__pad_0", "slice": { "start_bit": 0, "bit_width": 7 } },
+        { "name": "__pad_1", "slice": { "start_bit": 0, "bit_width": 1 } },
+        {
+          "name": "^fields_md_int_meta_source",
+          "slice": { "start_bit": 0, "bit_width": 1 }
+        },
+        {
+          "name": "^fields_md_spgw_skip_egress_pdr_ctr",
+          "slice": { "start_bit": 0, "bit_width": 1 }
+        },
+        {
+          "name": "^fields_md_spgw_needs_gtpu_encap",
+          "slice": { "start_bit": 0, "bit_width": 1 }
+        },
+        {
+          "name": "^fields_md_fwd_type",
+          "slice": { "start_bit": 0, "bit_width": 3 }
+        },
+        {
+          "name": "^fields_md_spgw_skip_spgw",
+          "slice": { "start_bit": 0, "bit_width": 1 }
+        },
+        { "name": "__pad_2", "slice": { "start_bit": 0, "bit_width": 7 } },
         {
           "name": "^fields_ig_intr_md_ingress_port",
           "slice": { "start_bit": 0, "bit_width": 9 }
         },
-        { "name": "__pad_1", "slice": { "start_bit": 0, "bit_width": 4 } },
+        { "name": "__pad_3", "slice": { "start_bit": 0, "bit_width": 4 } },
         {
           "name": "^fields_md_vlan_id",
           "slice": { "start_bit": 0, "bit_width": 12 }
@@ -184771,7 +175197,7 @@
           "name": "^fields_md_mpls_label",
           "slice": { "start_bit": 0, "bit_width": 20 }
         },
-        { "name": "__pad_2", "slice": { "start_bit": 0, "bit_width": 4 } }
+        { "name": "__pad_4", "slice": { "start_bit": 0, "bit_width": 4 } }
       ]
     },
     {
@@ -184783,6 +175209,6 @@
       ]
     }
   ],
-  "run_id": "efdedb0db25fc68b",
+  "run_id": "d26d8c7f3c12f92b",
   "driver_options": { "hash_parity_enabled": false, "high_availability_enabled": true }
 }
\ No newline at end of file
diff --git a/src/main/resources/p4c-out/fabric-spgw-int/tofino/montara_sde_9_0_0/pipe/tofino.bin b/src/main/resources/p4c-out/fabric-spgw-int/tofino/montara_sde_9_0_0/pipe/tofino.bin
index b6bdcab..b00c9a2 100644
--- a/src/main/resources/p4c-out/fabric-spgw-int/tofino/montara_sde_9_0_0/pipe/tofino.bin
+++ b/src/main/resources/p4c-out/fabric-spgw-int/tofino/montara_sde_9_0_0/pipe/tofino.bin
Binary files differ